Wrapper-API-Package für Framework für fungibles Token

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 ein Einzahlungstokenszenario spezifisch sind.

Das Wrapper-API-Package verwendet den API-Gateway-Service und OCI Functions, um API-Routen bereitzustellen, die speziell für die Einzahlungstokenanwendung entwickelt wurden. Das Wrapper-API-Package für das fungible Token Framework kann von der Oracle Blockchain Platform-Konsole heruntergeladen werden und enthält die folgenden Komponenten.
  • DepositTokenWrapperAPI.zip, eine Archivdatei, die das Wrapper-API-Package einschließlich der für das Deployment erforderlichen Terraform-Skripte enthält. 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.
  • DepositToken_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

registerOrg
Ursprünglicher Methodenname: registerOrg
Diese POST-Methode registriert eine Organisation im System. Diese Methode kann nur von einem Tokenadministrator aufgerufen werden.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "orgName": "org_name value",
    "endorsers": {{endorsers}}
}
Parameter:
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • orgName: string (Optional) Der Name der Organisation.
  • endorsers: string[]: Ein Array der Peers (z.B. peer1, peer2), das die Transaktion freigeben muss.
Beispiel für Rückgabewert:
{
    "assetType": "oorgregistry",
    "org_registry_id": "orgregistry",
    "registered_orgs": [
        {
            "org_id": "Org1MSP",
            "org_name": "Organisation name"
        }
    ]
}
getAllRegisteredOrgs
Ursprünglicher Methodenname: getAllRegisteredOrgs
Diese GET-Methode ruft Details aller registrierten Organisationen ab. Diese Methode kann nur von einem Tokenadministrator aufgerufen werden.
Abfrage:
/getAllRegisteredOrgs
Parameter:
  • Kein
Beispiel für Rückgabewert:
[
    {
        "org_id": "Org1MSP",
        "org_name": "Organisation name"
    }
]
activateAccount
Ursprünglicher Methodenname: activateAccount
Diese POST-Methode aktiviert ein Token-Konto. Diese Methode kann nur von einer Token Admin oder der Org Admin der angegebenen Organisation aufgerufen werden. Für alle Firmen, die vor der Funktion "Firmenstatus" erstellt wurden, müssen Sie diese Methode aufrufen, um den Firmenstatus auf "Aktiv" zu setzen.
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 Mitgliedsdienstanbieter-(MSP-)ID 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 freigeben muss.
Rückgabewert:
  • Bei Erfolg eine JSON-Darstellung des Accountstatusobjekts für den angegebenen Tokenaccount.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "db0738d4a44f6d9c80b24fce7c518c07023f7be19edaa69b272eaf7886b4b925",
        "payload": {
            "assetType": "oaccountStatus",
            "status_id": "oaccountStatus~d5814d96d8517ac31727d60aace0519c58a425892ab0d378fcfb0a35771f65ae",
            "account_id": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
            "status": "active"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 194
    }
}
addTokenAdmin
Ursprünglicher Methodenname: addTokenAdmin
Diese POST-Methode fügt einen Benutzer als Token Admin des Chaincodes hinzu. Diese Methode kann nur von einem Token Admin des Chaincodes aufgerufen werden.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parameter:
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Rückgabewert:
  • Bei Erfolg eine Nachricht, die Details des Benutzers enthält, der als Token Admin des Chaincodes hinzugefügt wurde.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "msg": "User (Org_Id: CB, User_Id: cb) is already Token Admin."
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
addTokenAuditor
Diese POST-Methode fügt einen Benutzer als Token Auditor des Chaincodes hinzu. Diese Methode kann nur von einem Token Admin des Chaincodes aufgerufen werden.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parameter:
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Rückgabewert:
  • Bei Erfolg eine Nachricht, die Details des Benutzers enthält, der als Token Auditor des Chaincodes hinzugefügt wurde.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "cd81f6c4c9e7c18ece357dbf5c139ef66ef2d6566be3b14de5f6d0a3fd4bb2f0",
        "payload": {
            "msg": "Successfully added Token Auditor (Org_Id: CB, User_Id: cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 196
    }
}
addOrgAdmin
Ursprünglicher Methodenname: addOrgAdmin
Diese POST-Methode fügt einen Benutzer als Token Admin des Chaincodes hinzu. Diese Methode kann nur von einem Token Admin des Chaincodes oder von einem Org Admin der angegebenen Organisation aufgerufen werden.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parameter:
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Rückgabewert:
  • Bei Erfolg eine Nachricht, die Details des Benutzers enthält, der als Org Admin des Chaincodes hinzugefügt wurde.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "96a84dffcb9156f7271dfb414e8c43b540595044cf9145f5fd56e9873797fc4a",
        "payload": {
            "msg": "Successfully added Org Admin (Org_Id: CB, User_Id: cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 197
    }
}
addOrgAuditor
Diese POST-Methode fügt einen Benutzer als Org Auditor des Chaincodes hinzu. Diese Methode kann nur von einem Token Admin des Chaincodes oder einem Org Admin der angegebenen Organisation aufgerufen werden.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parameter:
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Rückgabewert:
  • Bei Erfolg eine Nachricht, die Details des Benutzers enthält, der als Org Auditor des Chaincodes hinzugefügt wurde.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "44bbad35a1478cb714e32f7cfd551897868a203520aab9cea5771d3aadc1cf03",
        "payload": {
            "msg": "Successfully added Org Auditor (Org_Id: CB, User_Id: cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 198
    }
}
addRole
Ursprünglicher Methodenname: addRole
Diese Methode fügt die Rolle dem angegebenen Benutzer und Token hinzu.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "role": "role value (for example minter / burner / notary)",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • role: string: Der Name der Rolle, die dem angegebenen Benutzer hinzugefügt werden soll.
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID 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 freigeben muss.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "29ea766dee8e6d273eba3c40a9fea75a1aa85dc3c280d40695f6224c5c52d93c",
        "payload": {
            "msg": "Successfully added role 'notary' to Account Id: oaccount~2eb5f8a9bc561f8f41a4ea3be9511958cc6684ef14f2337ca396efc301b627d8 (Org-Id: CB, User-Id: manager_user_cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 201
    }
}
approveMint
Ursprünglicher Methodenname: approveMint
Notare können diese POST-Methode aufrufen, um eine Mint-Anforderung zu genehmigen.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "sameOrgEndorser": true
}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • operationId: string: Die eindeutige Vorgangs-ID der zu genehmigenden Mint-Anforderung.
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "a4537ef34a955b023b7c205b9abf06a6c79e4fdd761fb24f41b8eb34126b66c0",
        "payload": {
            "msg": "Successfully minted 10 tokens to Account Id: oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0 (Org-Id: CB, User-Id: creator_user_cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 204
    }
}
executeHoldTokens
Ursprünglicher Methodenname: executeHoldTokens
Notare rufen diese Methode auf, um eine Sperre für Token zu genehmigen. Die Menge der Token, die zuvor vom Tokenverantwortlichen zurückgestellt wurden, wird jetzt an den Empfänger übertragen. Wenn der Wert quantity kleiner als der tatsächliche Zurückstellungswert ist, ist der verbleibende Betrag wieder für den Eigentümer des Tokens verfügbar. Wenn das Verhalten roles im Abschnitt behaviors des Tokenmodells angegeben und der Wert notary_role_name festgelegt ist, muss der aufrufende Account eine Notarrolle aufweisen. Andernfalls kann jeder Aufrufer mit einem Konto als Notar fungieren.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "quantity": 1,
    "endorsers": {{endorsers}}
}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • operationId: string: Die eindeutige Vorgangs-ID der zu genehmigenden Mint-Anforderung.
  • quantity: number: Die Anzahl der zu übertragenden Token.
  • endorsers: string[]: Ein Array der Peers (z.B. peer1, peer2), das die Transaktion freigeben muss.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "c1149aaa486abc4931d9024c18dfcb230bb321723d1160b0bf981c0011c4856a",
        "payload": {
            "msg": "Account Id: oaccount~51e676d7182a02ea7418ef58a6d54ecfe3858ef40b4ffb3d859b320da3921594 (Org-Id: CB, User-Id: issuer_user_cb) is successfully executed '10' tokens from Operation Id '8e3145'."
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 213
    }
}
associateTokenToAccount
Ursprünglicher Methodenname: associateTokenToAccount
Diese POST-Methode ordnet einem angegebenen Token eine angegebene Konto-ID zu. Sie kann über Token Admin oder Org Admin aufgerufen werden.
Payload:
{
    "accountId": "account_id value",
    "tokenId": "{{bc-token-id}}",
    "endorsers": {{endorsers}}
}
Parameter:
  • accountId: string: Die ID des Kontos.
  • tokenId: string: Die ID des Tokens.
  • endorsers: string[]: Ein Array der Peers (z.B. peer1, peer2), das die Transaktion freigeben muss.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "efc7381fb6fc6174a40e83ff5f09d2bbf7f6f490365e3bbf19d5502c2cfec474",
        "payload": {
            "bapAccountVersion": 0,
            "assetType": "oaccount",
            "account_id": "oaccount~1c6aa60e220b8fc70caf4cea1ed723ddb193a00321e5e0004def062816b77090",
            "user_id": "cb12",
            "org_id": "CB",
            "token_type": "fungible",
            "token_id": "USD",
            "token_name": "cbdc",
            "balance": 0,
            "onhold_balance": 0,
            "onhold_burn_balance": 0,
            "max_daily_amount": 10000,
            "daily_amount": 0,
            "max_daily_transactions": 100,
            "daily_transactions": 0,
            "current_date": "2024-12-11T00:00:00.000Z"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20010",
        "blockNumber": 216
    }
}
createAccount
Ursprünglicher Methodenname: createAccount
Mit dieser Methode wird ein Account für einen angegebenen Benutzer und ein bestimmtes Token erstellt. Ein Konto muss für jeden Benutzer erstellt werden, der zu einem beliebigen Zeitpunkt Token hat. Account-IDs werden gebildet, indem der Assettyp und die Token-ID verkettet und dann ein SHA-256-Hash über eine Verkettung aus Organisations-ID und Benutzer-ID erstellt werden. Diese Methode kann nur von einem Token Admin des Chaincodes oder dem Org Admin der angegebenen Organisation aufgerufen werden.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "tokenType": "fungible",
    "dailyLimits": "{\"max_daily_amount\":10000,\"max_daily_transactions\":100}",
    "endorsers": {{endorsers}}
}
Parameter:
  • orgId - Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers, für den das Konto erstellt werden soll. Die ID muss mit einem alphanumerischen Zeichen beginnen und kann Buchstaben, Zahlen und Sonderzeichen wie Unterstriche (_), Punkte (.), At-Zeichen (@) und Bindestriche (-) enthalten.
  • userId: Der Benutzername oder die E-Mail-ID des Benutzers. Die ID muss mit einem alphanumerischen Zeichen beginnen und kann Buchstaben, Zahlen und Sonderzeichen wie Unterstriche (_), Punkte (.), At-Zeichen (@) und Bindestriche (-) enthalten.
  • tokenType: TokenType: Der Tokentyp, der fungible sein muss.
  • daily_limits: DailyLimits: Ein JSON-Objekt des folgenden Typs.
    {
         "max_daily_amount": 100000
         "max_daily_transactions": 10000
     }
    Im Beispiel ist der Wert max_daily_amount die maximale Anzahl von Token, die täglich ausgeführt werden können, und der Wert max_daily_transactions ist die maximale Anzahl von Transaktionen, die täglich abgeschlossen werden können.
  • endorsers: string[]: Ein Array der Peers (z.B. peer1, peer2), das die Transaktion freigeben muss.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "453821c7ffd477987ef8ccbd836b893969531ab768098cd4a99e3b89cd38a391",
        "payload": {
            "bapAccountVersion": 0,
            "assetType": "oaccount",
            "account_id": "oaccount~28ac774001f374064029d51af4fb67e26ea1ea9ef62828b7a72dbf3beb8efd8d",
            "user_id": "admin_user_cb",
            "org_id": "CB",
            "token_type": "fungible",
            "token_id": "",
            "token_name": "",
            "balance": 0,
            "onhold_balance": 0,
            "onhold_burn_balance": 0,
            "max_daily_amount": 10000,
            "daily_amount": 0,
            "max_daily_transactions": 100,
            "daily_transactions": 0,
            "current_date": "2024-12-09T00:00:00.000Z"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 188
    }
}
getAccount
Ursprünglicher Methodenname: getAccount
Diese Methode gibt Accountdetails für einen angegebenen Benutzer zurück. Diese Methode kann nur mit einer Token Admin des Chaincodes oder der Account Owner des Accounts aufgerufen werden.
Abfrage:
/getAccount?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "bapAccountVersion": 0,
            "assetType": "oaccount",
            "status": "active",
            "account_id": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
            "user_id": "admin_user_cb",
            "org_id": "CB",
            "token_type": "fungible",
            "token_id": "USD",
            "token_name": "cbdc",
            "balance": 0,
            "onhold_balance": 0,
            "onhold_burn_balance": 0,
            "max_daily_amount": 10000,
            "daily_amount": 0,
            "max_daily_transactions": 1000,
            "daily_transactions": 0,
            "current_date": "2024-11-20T00:00:00.000Z"
        },
        "encode": "JSON"
    }
}
getAccountBalance
Ursprünglicher Methodenname: getAccountBalance
Diese GET-Methode gibt den aktuellen Saldo für ein angegebenes Konto und Token zurück. Diese Methode kann nur von einer Token Admin oder der AccountOwner des Accounts aufgerufen werden.
/getAccountBalance?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "msg": "Current Balance is: 100",
            "user_balance": 100
        },
        "encode": "JSON"
    }
}
getAccountsByUser
Ursprünglicher Methodenname: getAccountsByUser
Diese Methode gibt eine Liste aller Konten für einen angegebenen Benutzer zurück. Diese Methode kann nur mit einer Token Admin des Chaincodes oder der Account Owner des Accounts aufgerufen werden.
Abfrage:
/getAccountsByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
Parameter:
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "bapAccountVersion": 0,
                "assetType": "oaccount",
                "account_id": "oaccount~8db15b42910eeec401e1bf22c69dfdd11c820ecc26539ea03a3426fa25cb8c28",
                "user_id": "admin_user_cb",
                "org_id": "CB",
                "token_type": "fungible",
                "token_id": "",
                "token_name": "",
                "balance": 0,
                "onhold_balance": 0,
                "onhold_burn_balance": 0,
                "max_daily_amount": 10000,
                "daily_amount": 0,
                "max_daily_transactions": 1000,
                "daily_transactions": 0,
                "current_date": "2024-11-20T00:00:00.000Z"
            },
            {
                "bapAccountVersion": 0,
                "assetType": "oaccount",
                "account_id": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
                "user_id": "admin_user_cb",
                "org_id": "CB",
                "token_type": "fungible",
                "token_id": "USD",
                "token_name": "cbdc",
                "balance": 0,
                "onhold_balance": 0,
                "onhold_burn_balance": 0,
                "max_daily_amount": 10000,
                "daily_amount": 0,
                "max_daily_transactions": 1000,
                "daily_transactions": 0,
                "current_date": "2024-11-20T00:00:00.000Z"
            },
            {
                "bapAccountVersion": 0,
                "assetType": "oaccount",
                "account_id": "oaccount~28ac774001f374064029d51af4fb67e26ea1ea9ef62828b7a72dbf3beb8efd8d",
                "user_id": "admin_user_cb",
                "org_id": "CB",
                "token_type": "fungible",
                "token_id": "",
                "token_name": "",
                "balance": 0,
                "onhold_balance": 0,
                "onhold_burn_balance": 0,
                "max_daily_amount": 10000,
                "daily_amount": 0,
                "max_daily_transactions": 100,
                "daily_transactions": 0,
                "current_date": "2024-12-09T00:00:00.000Z"
            }
        ],
        "encode": "JSON"
    }
}
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.
/getAccountTransactionHistory?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "transaction_id": "otransaction~64c5a4830949eae1424600f3d4a438c6f603a7c3ea31a68e374b899803999e22",
                "transacted_amount": 10,
                "timestamp": "2024-12-11T13:37:28.000Z",
                "balance": 550,
                "onhold_balance": 10,
                "token_id": "USD",
                "category": "category value",
                "description": "description value",
                "transacted_account": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
                "transaction_type": "REJECT_MINT",
                "transacted_org_id": "CB",
                "transacted_user_id'": "creator_user_cb"
            },
            {
                "transaction_id": "otransaction~a4537ef34a955b023b7c205b9abf06a6c79e4fdd761fb24f41b8eb34126b66c0",
                "transacted_amount": 10,
                "timestamp": "2024-12-11T13:36:32.000Z",
                "balance": 550,
                "onhold_balance": 10,
                "token_id": "USD",
                "description": "description value",
                "transacted_account": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
                "transaction_type": "APPROVE_MINT",
                "transacted_org_id": "CB",
                "transacted_user_id'": "creator_user_cb"
            },
            {
                "transaction_id": "otransaction~6237a759422bd9fb112742e8cd7e6450df5a74a32236d9b1005571afed8904a4",
                "transacted_amount": 10,
                "timestamp": "2024-12-11T13:36:18.000Z",
                "balance": 540,
                "onhold_balance": 10,
                "token_id": "USD",
                "category": "category value",
                "description": "description value",
                "transacted_account": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
                "transaction_type": "REQUEST_MINT",
                "transacted_org_id": "CB",
                "transacted_user_id'": "creator_user_cb"
            },
            {
                "transaction_id": "otransaction~06b35071415d74aa1a7c18449149c937d886cae76a832c44cf8d98e84586e76e",
                "transacted_amount": 10,
                "timestamp": "2024-12-11T13:35:46.000Z",
                "balance": 540,
                "onhold_balance": 10,
                "token_id": "USD",
                "category": "category value",
                "description": "description value",
                "transacted_account": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
                "transaction_type": "REQUEST_MINT",
                "transacted_org_id": "CB",
                "transacted_user_id'": "creator_user_cb"
            }
        ],
        "encode": "JSON"
    }
}
getAccountTransactionHistoryWithFiltersFromRichHistDB
Ursprünglicher Methodenname: getAccountTransactionHistoryWithFiltersFromRichHistDB
Diese Methode gibt die Details der Kontotransaktionshistorie aus der Rich-History-Datenbank zurück. Diese Methode kann nur von einer Token Admin oder der AccountOwner des Accounts aufgerufen werden. Bevor Sie diese Methode verwenden können, müssen Sie Oracle Autonomous Database mit aktiviertem Oracle REST Data Services (ORDS) und OAuth ausführen, wie unter Oracle Database View Definitions for Wholesale CBDC beschrieben.
/getAccountTransactionHistoryWithFiltersFromRichHistDB?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}&customEndpoint=custom_endpoint value&bearerToken=bearer_token value&filters={"pageSize":20,"bookmark":"","startTime":"2022-01-16T15:16:36+00:00","endTime":"2022-01-17T15:16:36+00:00"}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
  • customEndpoint: Der RESTful-Serviceendpunkt der Rich History-Datenbank, aus der die Transaktionshistorie abgerufen werden soll.
  • bearerToken: Das Token, mit dem der RESTful-Endpunkt aufgerufen wird, um sicherzustellen, dass die Anforderung autorisiert ist.
  • filters: string: Ein optionaler Parameter. Wenn leer, werden alle Datensätze zurückgegeben. Die Eigenschaft PageSize bestimmt die Anzahl der zurückzugebenden Datensätze. Wenn PageSize 0 ist, ist die Standardseitengröße 20. Die Eigenschaft Bookmark bestimmt den Startindex der zurückzugebenden Datensätze. Die Eigenschaften StartTime und EndTime müssen im RFC-3339-Format angegeben werden.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "transaction_id": "otransaction~64c5a4830949eae1424600f3d4a438c6f603a7c3ea31a68e374b899803999e22",
                "transacted_amount": 10,
                "timestamp": "2024-12-11T13:37:28.000Z",
                "balance": 550,
                "onhold_balance": 10,
                "token_id": "USD",
                "category": "category value",
                "description": "description value",
                "transacted_account": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
                "transaction_type": "REJECT_MINT",
                "transacted_org_id": "CB",
                "transacted_user_id'": "creator_user_cb"
            },
            {
                "transaction_id": "otransaction~a4537ef34a955b023b7c205b9abf06a6c79e4fdd761fb24f41b8eb34126b66c0",
                "transacted_amount": 10,
                "timestamp": "2024-12-11T13:36:32.000Z",
                "balance": 550,
                "onhold_balance": 10,
                "token_id": "USD",
                "description": "description value",
                "transacted_account": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
                "transaction_type": "APPROVE_MINT",
                "transacted_org_id": "CB",
                "transacted_user_id'": "creator_user_cb"
            },
            {
                "transaction_id": "otransaction~6237a759422bd9fb112742e8cd7e6450df5a74a32236d9b1005571afed8904a4",
                "transacted_amount": 10,
                "timestamp": "2024-12-11T13:36:18.000Z",
                "balance": 540,
                "onhold_balance": 10,
                "token_id": "USD",
                "category": "category value",
                "description": "description value",
                "transacted_account": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
                "transaction_type": "REQUEST_MINT",
                "transacted_org_id": "CB",
                "transacted_user_id'": "creator_user_cb"
            },
            {
                "transaction_id": "otransaction~06b35071415d74aa1a7c18449149c937d886cae76a832c44cf8d98e84586e76e",
                "transacted_amount": 10,
                "timestamp": "2024-12-11T13:35:46.000Z",
                "balance": 540,
                "onhold_balance": 10,
                "token_id": "USD",
                "category": "category value",
                "description": "description value",
                "transacted_account": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
                "transaction_type": "REQUEST_MINT",
                "transacted_org_id": "CB",
                "transacted_user_id'": "creator_user_cb"
            }
        ],
        "encode": "JSON"
    }
}
getNetTokens
Ursprünglicher Methodenname: getNetTokens
Diese GET-Methode gibt die Gesamtanzahl der Token zurück, die im System für ein angegebenes Token verfügbar sind. Die Nettotokensumme ist die Anzahl der verbleibenden Token, nachdem Token gebrannt wurden. Diese Methode kann nur von einem Token Admin des Chaincodes oder einem Org Admin der angegebenen Organisation aufgerufen werden.
/getNetCBDCTokens?tokenId={{bc-token-id}}
Parameter:
  • tokenId: string: Die ID des Tokens.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "msg": "Net supply of token for Token Id: USD is 878 tokens.",
            "quantity": 878
        },
        "encode": "JSON"
    }
}
getOnHoldIds
Ursprünglicher Methodenname: getOnHoldIds
Diese GET-Methode gibt eine Liste aller Halte-IDs für einen angegebenen Benutzer und ein bestimmtes Token zurück. Diese Methode kann nur mit Token Admin, Org Admin oder AccountOwner des Accounts aufgerufen werden.
/getOnHoldIds?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "msg": "Holding Ids are: ohold~cbdc~USD~8e3147,ohold~cbdc~USD~8e315",
            "holding_ids": [
                "ohold~cbdc~USD~8e3147",
                "ohold~cbdc~USD~8e315"
            ]
        },
        "encode": "JSON"
    }
}
getTotalMintedTokens
Ursprünglicher Methodenname: getTotalMintedTokens
Diese GET-Methode gibt die Gesamtanzahl der ausgeprägten Token für ein angegebenes Token zurück. Diese Methode kann nur mit einer Token Admin oder Org Admin aufgerufen werden.
Abfrage:
/getTotalMintedTokens?tokenId={{bc-token-id}}
Parameter:
  • tokenId: string: Die ID des Tokens.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "msg": "Total minted token for Token Id: USD is 910 tokens.",
            "quantity": 910
        },
        "encode": "JSON"
    }
}
getUserByAccountId
Ursprünglicher Methodenname: getUserByAccountId
Diese GET-Methode gibt die Benutzerdetails für einen angegebenen Account zurück. Diese Methode kann von Token Admin, Token Auditor oder Org Auditor aufgerufen werden.
Abfrage:
/getUserByAccountId?accountId=account_id value
Parameter:
  • accountId: string: Die ID des Kontos.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "token_id": "USD",
            "user_id": "admin_user_cb",
            "org_id": "CB"
        },
        "encode": "JSON"
    }
}
getUsersByRole
Ursprünglicher Methodenname: getUsersByRole
Diese Methode gibt eine Liste aller Benutzer für eine angegebene Rolle und ein bestimmtes Token zurück. Diese Methode kann nur mit einem Token Admin aufgerufen werden.
/getUsersByRole?tokenId={{bc-token-id}}&role=role value (for example minter / burner / notary)
Parameter:
  • tokenId: string: Die ID des Tokens.
  • role: string: Der Name der Rolle, nach der gesucht werden soll.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "users": [
                {
                    "token_id": "USD",
                    "user_id": "creator_user_cb",
                    "org_id": "CB"
                },
                {
                    "token_id": "USD",
                    "user_id": "cb4",
                    "org_id": "CB"
                }
            ]
        },
        "encode": "JSON"
    }
}
holdTokens
Ursprünglicher Methodenname: holdTokens
Mit dieser Methode wird eine Sperre im Namen des Eigentümers der Token mit dem Konto to_account_id erstellt. Es wird ein Notarkonto angegeben, das die Sperre entweder abschließen oder freigeben muss. Wenn die Sperre erstellt wird, wird der angegebene Tokensaldo des Zahlers gesperrt. Ein gesperrter Saldo kann erst übertragen werden, wenn die Sperre abgeschlossen oder freigegeben wurde. Für den Aufrufer dieser Methode muss bereits ein Konto erstellt sein.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "toOrgId": "to_org_id value",
    "toUserId": "to_user_id value",
    "notaryOrgId": "notary_org_id value",
    "notaryUserId": "notary_user_id value",
    "quantity": 1,
    "timeToExpiration": "time_to_expiration value",
    "infoDetails": "{\"category\":\"category value\",\"description\":\"description value\"}",
    "endorsers": {{endorsers}}
}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • operationId: string: Eine eindeutige ID zur Identifizierung des Sperrvorgangs. Normalerweise wird diese ID von der Clientanwendung übergeben.
  • toOrgId: string: Die MSP-ID (Member Service Provider) des Empfängers in der aktuellen Organisation.
  • toUserId: string: Der Benutzername oder die E-Mail-ID des Empfängers.
  • notaryOrgId: string: Die Mitgliedsdienstanbieter-ID (MSP) des Notars in der aktuellen Organisation.
  • notaryUserId: string: Der Benutzername oder die E-Mail-ID des Notars.
  • quantity: number: Die Anzahl der zurückzustellenden Token.
  • timeToExpiration: Der Zeitpunkt, zu dem die Sperre abläuft. Geben Sie 0 für eine permanente Sperre an. Verwenden Sie andernfalls das RFC-3339-Format. Beispiel: 2021-06-02T12:46:06Z.
  • infoDetails: JSON: Die Beschreibung und Kategorie, wie im folgenden Beispiel gezeigt.
    {
       "category" : "category input",
       "description" : "description input"
    }
  • endorsers: string[]: Ein Array der Peers (z.B. peer1, peer2), das die Transaktion freigeben muss.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "e575d339299bb98afe83207e749cd07654f209673c84c6973738b6094da33062",
        "payload": {
            "msg": "AccountId oaccount~51e676d7182a02ea7418ef58a6d54ecfe3858ef40b4ffb3d859b320da3921594 (Org-Id: CB , User-Id: issuer_user_cb) is successfully holding 10 tokens"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 211
    }
}
init
Ursprünglicher Methodenname: init
Diese Methode wird aufgerufen, wenn der Chaincode bereitgestellt wird. Die Benutzerinformationen werden als Token Admin des Chaincodes gespeichert.
Payload:
{
    "adminList": "[{\"org_id\":\"{{bc-org-id}}\",\"user_id\":\"{{bc-admin-user}}\"}]"
}
Parameter:
  • adminList array: Ein Array mit {user_id, org_id}-Informationen, das die Liste der Tokenadministratoren angibt. Das Array adminList ist ein obligatorischer Parameter.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "fdb7dc89832c8045a333823b77fa24ae628178148dc93b3550040e070d7cd807",
        "payload": "",
        "encode": "UTF-8",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 263
    }
}
initializeDepositToken
Ursprünglicher Methodenname: initializeDepositToken
Diese Methode erstellt ein Token und initialisiert die Tokeneigenschaften. Das Asset und seine Eigenschaften werden in der Statusdatenbank gespeichert. Diese Methode kann nur von einem Token Admin des Chaincodes aufgerufen werden.
Payload:
{
    "tokenAsset": "{\"token_id\":\"{{bc-token-id}}\",\"token_desc\":\"token_desc value\"}",
    "sameOrgEndorser": true
}
Parameter:
  • tokenAsset: <Token Class>: Das Tokenasset wird als Parameter an diese Methode übergeben. Die Eigenschaften des Tokenassets werden in der Modelldatei beschrieben.
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Rückgabewert:
  • Bei Erfolg eine JSON-Darstellung des erstellten Tokenassets.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "aa7a4f4cc214e1a041a5a6fb7ca7530f08256559e538c9f9582e6fd12c9e65c8",
        "payload": {
            "assetType": "otoken",
            "events": false,
            "token_id": "t1",
            "token_name": "cbdc",
            "token_desc": "token_desc value",
            "token_standard": "ttf+",
            "token_type": "fungible",
            "token_unit": "fractional",
            "behaviors": [
                "divisible",
                "mintable",
                "transferable",
                "burnable",
                "holdable",
                "roles"
            ],
            "roles": {
                "minter_role_name": "minter",
                "burner_role_name": "burner",
                "notary_role_name": "notary",
                "mint_approver_role_name": "notary",
                "burn_approver_role_name": "notary"
            },
            "mintable": {
                "max_mint_quantity": 1000,
                "mint_approval_required": true
            },
            "burnable": {
                "burn_approval_required": true
            },
            "divisible": {
                "decimal": 2
            },
            "token_to_currency_ratio": 999
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 267
    }
}
rejectMint
Ursprünglicher Methodenname: rejectMint
Diese Methode kann von einem Notar aufgerufen werden, um eine Prägeanforderung abzulehnen.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "sameOrgEndorser": true
}
Parameter:
  • token_id: string: Die ID des Tokens, das das Minting ablehnen soll.
  • operation_id: string: Die eindeutige Vorgangs-ID, die der Mint-Anforderung entspricht.
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "64c5a4830949eae1424600f3d4a438c6f603a7c3ea31a68e374b899803999e22",
        "payload": {
            "msg": "Successfully rejected mint request with Operation Id 'op1234' to mint 10 tokens of token id USD"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 205
    }
}
releaseHoldTokens
Ursprünglicher Methodenname: releaseHoldTokens
Diese POST-Methode gibt eine Sperre für Token frei. Die Übertragung ist nicht abgeschlossen, und alle zurückgestellten Token stehen dem ursprünglichen Eigentümer erneut zur Verfügung.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "endorsers": {{endorsers}}
}
Parameter:
  • token_id: string: Die ID des Tokens.
  • operation_id: string: Eine eindeutige ID zur Identifizierung des Sperrvorgangs. Normalerweise wird diese ID von der Clientanwendung übergeben.
  • endorsers: string[]: Ein Array der Peers (z.B. peer1, peer2), das die Transaktion freigeben muss.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "f04ba8895d52bc636d843f88476002bc99d01480c36be87c8fa259cd47a29380",
        "payload": {
            "msg": "Successfully released '10' tokens from Operation Id '8e3144' to Account Id: oaccount~51e676d7182a02ea7418ef58a6d54ecfe3858ef40b4ffb3d859b320da3921594 (Org-Id: CB, User-Id: issuer_user_cb)."
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 214
    }
}
removeTokenAdmin
Ursprünglicher Methodenname: removeTokenAdmin
Mit dieser POST-Methode wird ein Benutzer als Token Admin des Chaincodes entfernt. Diese Methode kann nur von einem Token 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 Mitgliedsdienstanbieter-(MSP-)ID 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 von derselben Organisation wie der Anforderer stammen müssen.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "6a3b9b568d04b5beb29830f91efe4e8c6310b6cf36940cecfb4ab690fbfde739",
        "payload": {
            "msg": "Successfully removed Token Admin (Org_Id: CB, User_Id: cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20010",
        "blockNumber": 218
    }
}
removeTokenAuditor
Ursprünglicher Methodenname: removeTokenAuditor
Mit dieser POST-Methode wird ein Benutzer als Token Auditor des Chaincodes entfernt. Diese Methode kann nur von einem Token Admin des Chaincodes aufgerufen werden.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parameter:
  • org_id: string: Die Mitgliedsdienstanbieter-(MSP-)ID 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 von derselben Organisation wie der Anforderer stammen müssen.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "a886a6040fbc76374a3c78c89ab0ffc9f7b8391cc5239b169bf3b878cf40c67b",
        "payload": {
            "msg": "Successfully removed Token Auditor (Org_Id: CB, User_Id: cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20010",
        "blockNumber": 219
    }
}
removeOrgAdmin
Ursprünglicher Methodenname: removeOrgAdmin
Mit dieser POST-Methode wird ein Benutzer als Org Admin des Chaincodes entfernt. Diese Methode kann nur von einem Token Admin oder Org Admin der angegebenen Organisation aufgerufen werden.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parameter:
  • org_id: string: Die Mitgliedsdienstanbieter-(MSP-)ID 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 von derselben Organisation wie der Anforderer stammen müssen.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "e2a634f6093f89b1984e20ff86a513fabb7c3ade7cc9e27d9734b4aaf6c88597",
        "payload": {
            "msg": "Successfully removed Org Admin (Org_Id: CB, User_Id: cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20010",
        "blockNumber": 220
    }
}
removeOrgAuditor
Ursprünglicher Methodenname: removeOrgAuditor
Mit dieser POST-Methode wird ein Benutzer als Org Auditor des Chaincodes entfernt. Diese Methode kann nur von einem Token Admin oder Org Admin der angegebenen Organisation aufgerufen werden.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parameter:
  • org_id: string: Die Mitgliedsdienstanbieter-(MSP-)ID 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 von derselben Organisation wie der Anforderer stammen müssen.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "c3bc720461004a53b37c68d4bb264858b88d980bc093a0a3ebb62a32974fb306",
        "payload": {
            "msg": "Successfully removed Org Auditor (Org_Id: CB, User_Id: cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20010",
        "blockNumber": 221
    }
}
removeRole
Ursprünglicher Methodenname: removeRole
Mit dieser Methode wird eine Rolle aus einem angegebenen Benutzer entfernt. Diese Methode kann nur von einem Token Admin des Chaincodes oder einem Org Admin der angegebenen Organisation aufgerufen werden.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "role": "role value (for example minter / burner / notary)",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • role: string: Der Name der Rolle, die aus dem angegebenen Benutzer entfernt werden soll. Das Verhalten von mintable und burnable entspricht den Eigenschaften minter_role_name und burner_role_name der Spezifikationsdatei.
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID 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 freigeben muss.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "274f0d0a2c4c3929817fb85b2e857519695c3c238ccf9903b084b87e9be7ee12",
        "payload": {
            "msg": "Successfully removed role 'notary' from Account Id: oaccount~2eb5f8a9bc561f8f41a4ea3be9511958cc6684ef14f2337ca396efc301b627d8 (Org-Id: CB, User-Id: manager_user_cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 200
    }
}
requestMint
Ursprünglicher Methodenname: requestMint
Diese Methode kann von einem Miner aufgerufen werden, um eine Anforderung an den Notar zu senden, um eine bestimmte Anzahl von Token zu erstellen.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "notaryOrgId": "notary_org_id value",
    "notaryUserId": "notary_user_id value",
    "quantity": 1,
    "timeToExpiration": "time_to_expiration value",
    "infoDetails": "{\"category\":\"category value\",\"description\":\"description value\"}",
    "sameOrgEndorser": true
}
Parameter:
  • tokenId: string: Die ID des zu prägenden Tokens.
  • operationId: string: Die eindeutige Vorgangs-ID, die der Mint-Anforderung entspricht.
  • notaryOrgId: string – Die Mitgliedsdienstleister-ID (MSP) des Notars, der die Anfrage bearbeitet.
  • notaryUserId: string: Der Benutzername oder die E-Mail-ID des Notars, der die Anforderung verarbeitet.
  • quantity: number - Die Anzahl der Token für Mint.
  • timeToExpiration – Die Zeit, nach der die Minting-Anforderung abläuft und nicht mehr gültig ist.
  • infoDetails: JSON: Ein Objekt, das die Kategorie (category) und die Beschreibung (description) der Anforderung angibt, wie im folgenden Beispiel dargestellt.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "06b35071415d74aa1a7c18449149c937d886cae76a832c44cf8d98e84586e76e",
        "payload": {
            "msg": "AccountId oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0 (Org-Id: CB , User-Id: creator_user_cb) has successfully submitted request to mint 10 tokens"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20010",
        "blockNumber": 202
    }
}
burnTokens
Ursprünglicher Methodenname: burnTokens
Mit dieser POST-Methode werden Token aus dem Konto des Transaktionsaufrufers deaktiviert oder verbrannt. Der Aufrufer dieser Methode muss einen Account und die Burner-Rolle aufweisen. Die Menge muss innerhalb der Dezimalwerte liegen, die durch den Parameter decimal des Verhaltens divisible in der Spezifikationsdatei angegeben werden. Diese Methode kann von der AccountOwner des Accounts mit der Burner-Rolle aufgerufen werden.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "quantity": 1,
    "infoDetails": "{\"category\":\"category value\",\"description\":\"description value\"}",
    "sameOrgEndorser": true
}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • quantity – Die Anzahl der zu brennenden Token.
  • infoDetails: JSON: Ein Objekt, das die Kategorie (category) und die Beschreibung (description) der Anforderung angibt, wie im folgenden Beispiel dargestellt.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Rückgabewert:
  • Bei Erfolg eine Erfolgsmeldung mit der Anzahl der verbrannten Token und der Konto-ID.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "aff0b2dbb163ec8076747525db81fbe8f678ac88a277c5f234337f0747eb1a8d",
        "payload": {
            "msg": "Successfully burned 10 tokens from account id: oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0 (Org-Id: CB, User-Id: creator_user_cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20010",
        "blockNumber": 96
    }
}
setMaxDailyAmount
Ursprünglicher Methodenname: setMaxDailyAmount
Mit dieser POST-Methode wird der Parameter maxDailyAmount in den Kontodetails für den angegebenen Betrag festgelegt. Diese Methode kann nur durch eine Token Admin des Chaincodes oder durch eine Org Admin der angegebenen Organisation aufgerufen werden.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "tokenId": "{{bc-token-id}}",
    "maxDailyAmount": 1,
    "endorsers": {{endorsers}}
}
Parameter:
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
  • tokenId: string: Die ID des Tokens.
  • maxDailyAmount: number: Der maximale Wert für den täglichen Betrag für das angegebene Konto, der den maximalen Betrag definiert, der täglich ausgeführt werden kann.
  • endorsers: string[]: Ein Array der Peers (z.B. peer1, peer2), das die Transaktion freigeben muss.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "28682e0564e4721b6c1a8ec106f8c5c98319e9439959dbb9f83d8e6f111d9975",
        "payload": {
            "bapAccountVersion": 0,
            "assetType": "oaccount",
            "account_id": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
            "user_id": "admin_user_cb",
            "org_id": "CB",
            "token_type": "fungible",
            "token_id": "USD",
            "token_name": "cbdc",
            "balance": 0,
            "onhold_balance": 0,
            "onhold_burn_balance": 0,
            "max_daily_amount": 10000,
            "daily_amount": 0,
            "max_daily_transactions": 1000,
            "daily_transactions": 0,
            "current_date": "2024-11-20T00:00:00.000Z"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20010",
        "blockNumber": 222
    }
}
setMaxDailyTransactionCount
Ursprünglicher Methodenname: setMaxDailyTransactionCount
Mit dieser POST-Methode wird der Parameter maxDailyTransactions in den Kontodetails für den angegebenen Betrag festgelegt. Diese Methode kann nur durch eine Token Admin des Chaincodes oder durch eine Org Admin der angegebenen Organisation aufgerufen werden.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "tokenId": "{{bc-token-id}}",
    "maxDailyTransactions": 1,
    "endorsers": {{endorsers}}
}
Parameter:
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
  • tokenId: string: Die ID des Tokens.
  • maxDailyTransactions: number: Der maximale Wert für den täglichen Betrag für das angegebene Konto, der die maximale Anzahl von Transaktionen definiert, die pro Tag zulässig sind.
  • endorsers: string[]: Ein Array der Peers (z.B. peer1, peer2), das die Transaktion freigeben muss.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "8b6fb01de697562ee098110054f05d4a314933bd11ef471991cb43e25b68bad9",
        "payload": {
            "bapAccountVersion": 0,
            "assetType": "oaccount",
            "account_id": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
            "user_id": "admin_user_cb",
            "org_id": "CB",
            "token_type": "fungible",
            "token_id": "USD",
            "token_name": "cbdc",
            "balance": 0,
            "onhold_balance": 0,
            "onhold_burn_balance": 0,
            "max_daily_amount": 10000,
            "daily_amount": 0,
            "max_daily_transactions": 1000,
            "daily_transactions": 0,
            "current_date": "2024-11-20T00:00:00.000Z"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20010",
        "blockNumber": 223
    }
}
suspendAccount
Ursprünglicher Methodenname: suspendAccount
Diese Methode unterbricht ein fungibles Tokenkonto. Es wird ein Fehler ausgelöst, wenn kein accountStatus-Wert im Buch gefunden wird. Diese Methode kann nur durch eine Token Admin des Chaincodes oder durch eine Org Admin der angegebenen Organisation aufgerufen werden.
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 Mitgliedsdienstanbieter-(MSP-)ID 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 freigeben muss.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "e21d91d98091df77f90105d84074c0b802b01fc97a6b1304247774397fed1294",
        "payload": {
            "assetType": "oaccountStatus",
            "status_id": "oaccountStatus~d5814d96d8517ac31727d60aace0519c58a425892ab0d378fcfb0a35771f65ae",
            "account_id": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
            "status": "suspended"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 195
    }
}
transferTokens
Ursprünglicher Methodenname: transferTokens
Mit dieser Methode werden Token vom Aufrufer an ein bestimmtes Konto übertragen. Der Aufrufer der Methode muss ein Konto haben. Die Menge muss innerhalb der Dezimalwerte liegen, die durch den Parameter decimal des Verhaltens divisible in der Spezifikationsdatei angegeben werden.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "toOrgId": "to_org_id value",
    "toUserId": "to_user_id value",
    "quantity": 1,
    "infoDetails": "{\"category\":\"category value\",\"description\":\"description value\"}",
    "endorsers": {{endorsers}}
}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • toOrgId: string – Die Mitgliedsdienstleister-ID (MSP) des Empfängers (Zahlungsempfängers) in der aktuellen Organisation.
  • toUserId: string: Der Benutzername oder die E-Mail-ID des Empfängers.
  • quantity: number: Die Anzahl der zu übertragenden Token.
  • infoDetails: JSON: Ein Objekt, das die Kategorie (category) und die Beschreibung (description) der Anforderung angibt, wie im folgenden Beispiel dargestellt.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • endorsers: string[]: Ein Array der Peers (z.B. peer1, peer2), das die Transaktion freigeben muss.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "d613b2494b965811b2fa2106152b7085f2d6d7d43e949b10b8668722d3636fe7",
        "payload": {
            "msg": "Successfully transferred 10 tokens from account id: oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0 (Org-Id: CB, User-Id: creator_user_cb) to account id: oaccount~51e676d7182a02ea7418ef58a6d54ecfe3858ef40b4ffb3d859b320da3921594 (Org-Id: CB, User-Id: issuer_user_cb). Only 999 number of transactions and 1990 amount transfer left for today: 12/11/2024"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 224
    }
}
initializeExchangePoolUser
Ursprünglicher Methodenname: initializeExchangePoolUser
Diese Methode initialisiert den Exchange Pool-Benutzer, bei dem es sich um eine einmalige Aktivität handelt. Diese Methode kann nur von der Token Admin aufgerufen werden.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parameter:
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "e21d91d98091df77f90105d84074c0b802b01fc97a6b1304247774397fed1294",
        "payload": {
            "assetType": "oconversion",
            "convertor_id": "bcb1f3b1442c625d3ce205660c5e717c5858a1fe1e12c325df799a851ceaa09b",
            "org_id": "Org1MSP",
            "user_id": "exchangepooluser"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 196
    }
}
createExchangePoolAccounts
Ursprünglicher Methodenname: createExchangePoolAccounts
Diese Methode erstellt Exchange-Pool-Tokenkonten für ein bestimmtes Array von Token-IDs. Diese Methode kann nur von einem Token Admin des Chaincodes aufgerufen werden.
Payload:
{
    "tokenIds": "[{{bc-token-id}}]",
    "sameOrgEndorser": true
}
Parameter:
  • token_ids: string []: Ein Array von Token-IDs.
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "e21d91d98091df77f90105d84074c0b802b01fc97a6b1304247774397fed1294",
        "payload": [
            {
                "account_id": "oaccount~cc9d84f6d4a5976532493ef5200c9603e138adc35166ffd5fd1aad9c1647f034",
                "token_id": "USD",
                "status": "created"
            },
            {
                "account_id": "oaccount~3d4933111ec8bd6cc1ebb43f2b2c390deb929cfa534f9c6ada8e63bac04a13c0",
                "token_id": "INR",
                "status": "created"
            }
        ],
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 197
    }
}
addConversionRate
Ursprünglicher Methodenname: addConversionRate
Diese Methode fügt eine Konvertierungsrate für ein Tokenpaar hinzu. Die Tokenkonvertierungsrate kann bis zu acht Dezimalstellen angegeben werden. Diese Methode kann nur von einem Token Admin des Chaincodes aufgerufen werden.
Payload:
{
    "fromTokenId": "from_token_id value",
    "toTokenId": "to_token_id value",
    "tokenConversionRate": 10,
    "sameOrgEndorser": true
}
Parameter:
  • fromTokenId: string: Die ID des Tokens, aus dem konvertiert werden soll.
  • toTokenId: string: Die ID des Tokens, in das konvertiert werden soll.
  • tokenConversionRate: number: Die Rate, mit der das fromTokenId-Token in das toTokenId-Token konvertiert werden soll.
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "e21d91d98091df77f90105d84074c0b802b01fc97a6b1304247774397fed1294",
        "payload": {
          "assetType": "oconversionRate",
          "conversion_rate_id": "oconversionRate~91c7eeb0614e7a50b1d5ecad559fcbc80b94034648bf405c9491dacf8d57873b",
          "from_token_id": "USD",
          "to_token_id": "INR",
          "conversion_rate": 10
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 189
    }
}
updateConversionRate
Ursprünglicher Methodenname: updateConversionRate
Mit dieser Methode wird die aktuelle Konvertierungsrate für ein Tokenpaar aktualisiert. Die Tokenkonvertierungsrate kann bis zu acht Dezimalstellen angegeben werden. Diese Methode kann nur von einem Token Admin des Chaincodes aufgerufen werden.
Payload:
{
    "fromTokenId": "from_token_id value",
    "toTokenId": "to_token_id value",
    "tokenConversionRate": 20,
    "sameOrgEndorser": true
}
Parameter:
  • fromTokenId: string: Die ID des Tokens, aus dem konvertiert werden soll.
  • toTokenId: string: Die ID des Tokens, in das konvertiert werden soll.
  • tokenConversionRate: number: Die Rate, mit der das fromTokenId-Token in das toTokenId-Token konvertiert werden soll.
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "e21d91d98091df77f90105d84074c0b802b01fc97a6b1304247774397fed1294",
        "payload": {
          "assetType": "oconversionRate",
          "conversion_rate_id": "oconversionRate~91c7eeb0614e7a50b1d5ecad559fcbc80b94034648bf405c9491dacf8d57873b",
          "from_token_id": "USD",
          "to_token_id": "INR",
          "conversion_rate": 20
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 208
    }
}
mintWithFundingExchangePool
Ursprünglicher Methodenname: mintWithFundingExchangePool
Mit dieser Methode werden Token im Konto des Anrufers basierend auf der angegebenen Token-ID und Menge abgebildet. Ein Prozentsatz der Token aus der Prägemenge wird dann auf das Token-Konto des Exchange-Pools übertragen.
{
    "tokenId": "{{bc-token-id}}",
    "tokenQuantity": 100,
    "percentageTokenToExchangePool": 20,
    "sameOrgEndorser": true
}
Parameter:
  • tokenId: string: Die ID des zu prägenden Tokens.
  • tokenQuantity: number: Die Gesamtanzahl der zu mint zu erstellenden Token.
  • percentageTokenToExchangePool: number: Der Prozentsatz der abgebauten Token, die auf das Tokenkonto des Exchange-Pools übertragen werden sollen.
  • sameOrgEndorser: boolean: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen von derselben Organisation wie der Anforderer stammen müssen.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "e21d91d98091df77f90105d84074c0b802b01fc97a6b1304247774397fed1294",
        "payload": {
            "msg": "Successfully minted 100 tokens to Account Id: oaccount~abc74791148b761352b98df58035601b6f5480448ac2b4a3a7eb54bdbebf48eb (Org-Id: Org1MSP, User-Id: admin) and Successfully transfered 20 tokens to exchange pool Account with Account Id: oaccount~cc9d84f6d4a5976532493ef5200c9603e138adc35166ffd5fd1aad9c1647f034 (Org-Id: Org1MSP, User-Id: exchangepooluser) "
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 209
    }
}
tokenConversion
Ursprünglicher Methodenname: tokenConversion
Diese Methode konvertiert Token aus dem Account des Aufrufers in den Account, der durch die Werte to_token_id, to_org_id und to_user_id angegeben wird. Diese Methode kann von der Token Admin des Chaincodes und von jedem Tokenkontoinhaber aufgerufen werden. Ein Exchange Pool-Benutzer kann diese Methode nicht aufrufen.
{
    "fromTokenId": "from_token_id value",
    "toTokenId": "to_token_id value",
    "toOrgId": "to_org_id value",
    "toUserId": "to_user_id value",
    "tokenQuantity": 5,
    "endorsers": {{endorsers}}
}
Parameter:
  • fromTokenId: string: Die ID des Tokens, aus dem konvertiert werden soll.
  • toTokenId: string: Die ID des Tokens, in das konvertiert werden soll.
  • toOrgId: string - Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation, der die Token erhält.
  • toUserId: string: Der Benutzername oder die E-Mail-ID des Benutzers, der die Token erhalten soll.
  • tokenQuantity: number: Die Gesamtanzahl der zu übertragenden Token.
  • endorsers: string[]: Ein Array der Peers (z.B. peer1, peer2), das die Transaktion freigeben muss.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "e21d91d98091df77f90105d84074c0b802b01fc97a6b1304247774397fed1294",
        "payload": {
            "msg": "Succesfully converted 5 of tokens with tokenId: [USD] from AccountId: oaccount~abc74791148b761352b98df58035601b6f5480448ac2b4a3a7eb54bdbebf48eb (Org-Id: Org1MSP, User-Id: admin) to 100 of tokens with tokenId: [INR] to AccountId: oaccount~25e2e66718b6dbb59aea9c32acebec60e09d912b2578d4933d377ae5d0628f1e (Org-Id: Org1MSP, User-Id: user) as per the conversion rate of 20"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 213
    }
}
getConversionRate
Ursprünglicher Methodenname: getConversionRate
Diese GET-Methode ruft die aktuelle Konvertierungsrate für ein Tokenpaar ab. Diese Methode kann von Token Admin, Token Auditor, Org Admin oder Org Auditor aufgerufen werden.
Abfrage:
/getConversionRate?fromTokenId=from_token_id value&toTokenId=to_token_id value
Parameter:
  • fromTokenId: string: Die ID des Tokens, aus dem konvertiert werden soll.
  • toTokenId: string: Die ID des Tokens, in das konvertiert werden soll.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
          "assetType": "oconversionRate",
          "conversion_rate_id": "oconversionRate~91c7eeb0614e7a50b1d5ecad559fcbc80b94034648bf405c9491dacf8d57873b",
          "from_token_id": "USD",
          "to_token_id": "INR",
          "conversion_rate": 20
        },
        "encode": "JSON"
    }
}
getConversionHistory
Ursprünglicher Methodenname: getConversionRate
Diese GET-Methode gibt die Tokenkonvertierungshistorie für ein angegebenes Tokenkonto zurück. Diese Methode kann von Token Admin, Token Auditor, Org Admin, Org Auditor oder dem Eigentümer des Tokenaccounts aufgerufen werden.
Abfrage:
/getConversionHistory?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
          {
            "transaction_id": "otransaction~34edd19e03ec8bbbc77bc3372081410a824a5c10f9aa522b3a6390d7e8cb11cf",
            "from_account_id": "oaccount~abc74791148b761352b98df58035601b6f5480448ac2b4a3a7eb54bdbebf48eb",
            "to_account_id": "oaccount~25e2e66718b6dbb59aea9c32acebec60e09d912b2578d4933d377ae5d0628f1e",
            "transacted_amount": 5,
            "converted_amount": 100,
            "conversion_rate": "20",
            "from_token_id": "USD",
            "to_token_id": "INR",
            "balance": 75,
            "onhold_balance": 0,
            "timestamp": "2022-11-30T11:03:20.000Z",
            "transaction_type": "TOKEN_CONVERSION_DEBIT"
          }
        ],
        "encode": "JSON"
    }
}
getExchangePoolUser
Ursprünglicher Methodenname: getExchangePoolUser
Diese GET-Methode gibt die Werte für Organisations-ID und Benutzer-ID für den Exchange Pool-Benutzer zurück. Diese Methode kann nur mit einer Token Admin oder Token Auditor des Chaincodes aufgerufen werden.
Abfrage:
/getExchangePoolUser
Parameter:
  • Kein
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload":  {
           "assetType": "oconversion",
           "convertor_id": "bcb1f3b1442c625d3ce205660c5e717c5858a1fe1e12c325df799a851ceaa09b",
           "org_id": "Org1MSP",
           "user_id": "exchangepooluser"
        },
        "encode": "JSON"
    }
}
getAccountOnHoldBalance
Ursprünglicher Methodenname: getAccountOnHoldBalance
Diese GET-Methode gibt den aktuellen einbehaltenen Saldo für ein angegebenes Konto und Token zurück. Diese Methode kann nur mit Token Admin, Token Auditor, Org Admin, Org Auditor oder der AccountOwner des Accounts aufgerufen werden.
Abfrage:
/getAccountOnHoldBalance?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload":  {
            "msg":"Total Holding Balance is: 0","holding_balance":0
        },
        "encode": "JSON"
    }
}
getAccountStatus
Ursprünglicher Methodenname: getAccountStatus
Diese GET-Methode ruft den aktuellen Status des Token-Accounts ab. Diese Methode kann von Token Admin, Token Auditor, Org Admin, Org Auditor oder vom Eigentümer des Tokenaccounts aufgerufen werden.
Abfrage:
/getAccountStatus?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parameter:
  • tokenId: string: Die ID des Tokens.
  • orgId: string: Die Mitgliedsdienstanbieter-(MSP-)ID des Benutzers in der aktuellen Organisation.
  • userId: string: Der Benutzername oder die E-Mail-ID des Benutzers.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload":  {
            "assetType": "oaccountStatus",
            "status_id": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
            "account_id": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
            "status": "active"
        },
        "encode": "JSON"
    }
}
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?tokenId={{bc-token-id}}&role=role value (for example minter / burner / notary)
Parameter:
  • tokenId: string: Die ID des Tokens.
  • role: string: Der Name der Rolle, nach der gesucht werden soll.
Beispiel für Rückgabewert:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload":  {
            "accounts":["oaccount~digicur~b4f45440aa2a7942db64443d047027e9d714d62cba5c3d546d64f368642f622f"]
        },
        "encode": "JSON"
    }
}