Package API wrapper framework token fungibile

Oracle Blockchain Platform Digital Assets Edition include un package API wrapper che estende l'API REST per supportare operazioni specifiche di uno scenario di token di deposito.

Il package API wrapper utilizza il servizio Gateway API e le funzioni OCI per distribuire gli instradamenti API progettati specificamente per l'applicazione token di deposito. Il pacchetto API wrapper del framework token fungible può essere scaricato dalla console di Oracle Blockchain Platform e include i componenti riportati di seguito.
  • DepositTokenWrapperAPI.zip, un file di archivio che contiene il package API wrapper che include gli script Terraform necessari per la distribuzione. Puoi distribuire questo file in uno stack di Resource Manager su Oracle Cloud Infrastructure (OCI) per creare le risorse Oracle necessarie per le API Wrapper.
  • DepositToken_WrapperAPI.postman_collection.json, una raccolta Postman che consente di eseguire il test delle API wrapper distribuite. La raccolta include richieste preconfigurate con endpoint e payload corrispondenti alle API definite nel package API wrapper.

API wrapper

activateAccount
Nome metodo originale: activateAccount
Questo metodo POST attiva un account token. Questo metodo può essere richiamato solo da un Token Admin o dall'Org Admin dell'organizzazione specificata. Per tutti i conti creati prima della funzionalità di stato del conto, è necessario chiamare questo metodo per visualizzare lo stato del conto su Attivo.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Parametri:
  • tokenId: string: l'ID del token.
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
  • endorsers: string[]: un array dei pari livello (ad esempio, peer1, peer2) che deve approvare la transazione.
Restituisce:
  • In caso di operazione riuscita, una rappresentazione JSON dell'oggetto stato account per l'account token specificato.
Esempio di valore restituito:
{
    "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
Nome metodo originale: addTokenAdmin
Questo metodo POST aggiunge un utente come Token Admin del codice concatenato. Questo metodo può essere richiamato solo da un Token Admin del codice concatenato.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parametri:
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Restituisce:
  • In caso di operazione riuscita, un messaggio che include i dettagli dell'utente aggiunto come Token Admin del codice concatenato.
Esempio di valore restituito:
{
    "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
Questo metodo POST aggiunge un utente come Token Auditor del codice concatenato. Questo metodo può essere richiamato solo da un Token Admin del codice concatenato.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parametri:
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Restituisce:
  • In caso di operazione riuscita, un messaggio che include i dettagli dell'utente aggiunto come Token Auditor del codice concatenato.
Esempio di valore restituito:
{
    "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
Nome metodo originale: addOrgAdmin
Questo metodo POST aggiunge un utente come Token Admin del codice concatenato. Questo metodo può essere chiamato solo da un Token Admin del codice concatenato o da un Org Admin dell'organizzazione specificata.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parametri:
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Restituisce:
  • In caso di operazione riuscita, un messaggio che include i dettagli dell'utente aggiunto come Org Admin del codice concatenato.
Esempio di valore restituito:
{
    "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
Questo metodo POST aggiunge un utente come Org Auditor del codice concatenato. Questo metodo può essere chiamato solo da un Token Admin del codice concatenato o da un Org Admin dell'organizzazione specificata.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parametri:
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Restituisce:
  • In caso di operazione riuscita, un messaggio che include i dettagli dell'utente aggiunto come Org Auditor del codice concatenato.
Esempio di valore restituito:
{
    "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
Nome metodo originale: addRole
Questo metodo aggiunge il ruolo all'utente e al token specificati.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "role": "role value (for example minter / burner / notary)",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Parametri:
  • tokenId: string: l'ID del token.
  • role: string: il nome del ruolo da aggiungere all'utente specificato.
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
  • endorsers: string[]: un array dei pari livello (ad esempio, peer1, peer2) che deve approvare la transazione.
Esempio di valore restituito:
{
    "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
Nome metodo originale: approveMint
I notai possono chiamare questo metodo POST per approvare una richiesta di menta.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "sameOrgEndorser": true
}
Parametri:
  • tokenId: string: l'ID del token.
  • operationId: string: l'ID operazione univoco della richiesta di menta da approvare.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: executeHoldTokens
I notai chiamano questo metodo per approvare un blocco sui token. La quantità di token bloccati in precedenza dal proprietario del token viene ora trasferita al destinatario. Se il valore quantity è inferiore al valore di blocco effettivo, l'importo rimanente sarà nuovamente disponibile per il proprietario del token. Se il comportamento roles è specificato nella sezione behaviors del modello di token e il valore notary_role_name è impostato, l'account chiamante deve avere un ruolo notaio. In caso contrario, qualsiasi chiamante con un account può funzionare come notaio.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "quantity": 1,
    "endorsers": {{endorsers}}
}
Parametri:
  • tokenId: string: l'ID del token.
  • operationId: string: l'ID operazione univoco della richiesta di menta da approvare.
  • quantity: number - Il numero di token conservati da trasferire.
  • endorsers: string[]: un array dei pari livello (ad esempio, peer1, peer2) che deve approvare la transazione.
Esempio di valore restituito:
{
    "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
Nome metodo originale: associateTokenToAccount
Questo metodo POST associa un ID account specificato a un token specificato. Può essere chiamato da un Token Admin o Org Admin.
Payload:
{
    "accountId": "account_id value",
    "tokenId": "{{bc-token-id}}",
    "endorsers": {{endorsers}}
}
Parametri:
  • accountId: string: l'ID del conto.
  • tokenId: string: l'ID del token.
  • endorsers: string[]: un array dei pari livello (ad esempio, peer1, peer2) che deve approvare la transazione.
Esempio di valore restituito:
{
    "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,
            "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
Nome metodo originale: createAccount
Questo metodo crea un account per un utente e un token specificati. È necessario creare un account per qualsiasi utente che avrà token in qualsiasi momento. Gli ID account vengono formati concatenando il tipo di asset e l'ID token, quindi creando un hash SHA-256 su una concatenazione dell'ID organizzazione e dell'ID utente. Questo metodo può essere richiamato solo da un Token Admin del codice concatenato o dall'Org Admin dell'organizzazione specificata.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "tokenType": "fungible",
    "dailyLimits": "{\"max_daily_amount\":10000,\"max_daily_transactions\":100}",
    "endorsers": {{endorsers}}
}
Parametri:
  • orgId: l'ID del provider di servizi di appartenenza (MSP) dell'utente per il quale creare l'account. L'ID deve iniziare con un carattere alfanumerico e può includere lettere, numeri e caratteri speciali quali i caratteri di sottolineatura (_), i punti (.), i segni @ e i trattini (-).
  • userId: il nome utente o l'ID e-mail dell'utente. L'ID deve iniziare con un carattere alfanumerico e può includere lettere, numeri e caratteri speciali quali i caratteri di sottolineatura (_), i punti (.), i segni @ e i trattini (-).
  • tokenType: TokenType: il tipo di token, che deve essere fungible.
  • daily_limits: DailyLimits: un oggetto JSON del tipo seguente.
    {
         "max_daily_amount": 100000
         "max_daily_transactions": 10000
     }
    Nell'esempio, il valore max_daily_amount rappresenta la quantità massima di token che è possibile eseguire transazioni giornaliere e il valore max_daily_transactions rappresenta il numero massimo di transazioni che è possibile completare quotidianamente.
  • endorsers: string[]: un array dei pari livello (ad esempio, peer1, peer2) che deve approvare la transazione.
Esempio di valore restituito:
{
    "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,
            "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
Nome metodo originale: getAccount
Questo metodo restituisce i dettagli dell'account per un utente specificato. Questo metodo può essere richiamato solo da un Token Admin del codice concatenato o dall'Account Owner dell'account.
Query:
/getAccount?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parametri:
  • tokenId: string: l'ID del token.
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
Esempio di valore restituito:
{
    "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,
            "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
Nome metodo originale: getAccountBalance
Questo metodo GET restituisce il saldo corrente per un conto e un token specificati. Questo metodo può essere chiamato solo da un Token Admin o dall'AccountOwner dell'account.
/getAccountBalance?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parametri:
  • tokenId: string: l'ID del token.
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
Esempio di valore restituito:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "msg": "Current Balance is: 100",
            "user_balance": 100
        },
        "encode": "JSON"
    }
}
getAccountsByUser
Nome metodo originale: getAccountsByUser
Questo metodo restituisce un elenco di tutti gli account per un utente specificato. Questo metodo può essere richiamato solo da un Token Admin del codice concatenato o dall'Account Owner dell'account.
Query:
/getAccountsByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
Parametri:
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
Esempio di valore restituito:
{
    "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,
                "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,
                "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,
                "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
Nome metodo originale: getAccountTransactionHistory
Questo metodo GET restituisce la cronologia delle transazioni del conto. Questo metodo può essere chiamato solo da un Token Admin del codice concatenato o dal proprietario del conto.
/getAccountTransactionHistory?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parametri:
  • tokenId: string: l'ID del token.
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: getAccountTransactionHistoryWithFiltersFromRichHistDB
Questo metodo restituisce i dettagli della cronologia delle transazioni conto dal database Rich History. Questo metodo può essere chiamato solo da un Token Admin o dall'AccountOwner dell'account. Per poter utilizzare questo metodo, è necessario eseguire Oracle Autonomous Database con Oracle REST Data Services (ORDS) e OAuth abilitati, come descritto in Oracle Database View Definitions for Wholesale CBDC.
/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"}
Parametri:
  • tokenId: string: l'ID del token.
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
  • customEndpoint: l'endpoint del servizio RESTful del database Rich History da cui recuperare la cronologia delle transazioni.
  • bearerToken: il token da utilizzare per chiamare l'endpoint RESTful per assicurarsi che la richiesta sia autorizzata.
  • filters: string: parametro facoltativo. Se vuoto, vengono restituiti tutti i record. La proprietà PageSize determina il numero di record da restituire. Se PageSize è 0, la dimensione predefinita della pagina è 20. La proprietà Bookmark determina l'indice iniziale dei record da restituire. Le proprietà StartTime e EndTime devono essere specificate in formato RFC-3339.
Esempio di valore restituito:
{
    "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
Nome metodo originale: getNetTokens
Questo metodo GET restituisce il numero netto totale di token disponibili nel sistema per un token specificato. Il totale del token netto è la quantità di token rimanenti dopo la masterizzazione dei token. Questo metodo può essere chiamato solo da un Token Admin del codice concatenato o da un Org Admin dell'organizzazione specificata.
/getNetCBDCTokens?tokenId={{bc-token-id}}
Parametri:
  • tokenId: string: l'ID del token.
Esempio di valore restituito:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "msg": "Net supply of token for Token Id: USD is 878 tokens.",
            "quantity": 878
        },
        "encode": "JSON"
    }
}
getOnHoldIds
Nome metodo originale: getOnHoldIds
Questo metodo GET restituisce un elenco di tutti gli ID di blocco per un utente e un token specificati. Questo metodo può essere chiamato solo da un Token Admin, Org Admin o AccountOwner dell'account.
/getOnHoldIds?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parametri:
  • tokenId: string: l'ID del token.
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: getTotalMintedTokens
Questo metodo GET restituisce il numero totale di token coniati per un token specificato. Questo metodo può essere chiamato solo da un Token Admin o Org Admin.
Query:
/getTotalMintedTokens?tokenId={{bc-token-id}}
Parametri:
  • tokenId: string: l'ID del token.
Esempio di valore restituito:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "msg": "Total minted token for Token Id: USD is 910 tokens.",
            "quantity": 910
        },
        "encode": "JSON"
    }
}
getUserByAccountId
Nome metodo originale: getUserByAccountId
Questo metodo GET restituisce i dettagli utente per un account specificato. Questo metodo può essere chiamato dal Token Admin, Token Auditor o Org Auditor.
Query:
/getUserByAccountId?accountId=account_id value
Parametri:
  • accountId: string: l'ID del conto.
Esempio di valore restituito:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "token_id": "USD",
            "user_id": "admin_user_cb",
            "org_id": "CB"
        },
        "encode": "JSON"
    }
}
getUsersByRole
Nome metodo originale: getUsersByRole
Questo metodo restituisce una lista di tutti gli utenti per un ruolo e un token specificati. Questo metodo può essere richiamato solo da un Token Admin.
/getUsersByRole?tokenId={{bc-token-id}}&role=role value (for example minter / burner / notary)
Parametri:
  • tokenId: string: l'ID del token.
  • role: string: il nome del ruolo da cercare.
Esempio di valore restituito:
{
    "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
Nome metodo originale: holdTokens
Questo metodo crea un blocco per conto del proprietario dei token con l'account to_account_id. È specificato un conto notarile, che è responsabile del completamento o del rilascio del blocco. Quando viene creato il blocco, il saldo del token specificato dal responsabile pagamento viene bloccato. Impossibile trasferire un saldo bloccato finché il blocco non viene completato o rilasciato. Il chiamante di questo metodo deve avere un account già creato.
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}}
}
Parametri:
  • tokenId: string: l'ID del token.
  • operationId: string: ID univoco che identifica l'operazione di blocco. In genere questo ID viene passato dall'applicazione client.
  • toOrgId: string: l'ID del provider di servizi di appartenenza (MSP) del destinatario nell'organizzazione corrente.
  • toUserId: string: il nome utente o l'ID e-mail del destinatario.
  • notaryOrgId: string - ID del fornitore di servizi di appartenenza (MSP) del notaio nell'organizzazione corrente.
  • notaryUserId: string - Il nome utente o l'ID e-mail del notaio.
  • quantity: number: il numero di token da mettere in attesa.
  • timeToExpiration: l'ora di scadenza del blocco. Specificare 0 per un blocco permanente. In caso contrario, utilizzare il formato RFC-3339. Ad esempio, 2021-06-02T12:46:06Z.
  • infoDetails: JSON: la descrizione e la categoria come mostrato nell'esempio riportato di seguito.
    {
       "category" : "category input",
       "description" : "description input"
    }
  • endorsers: string[]: un array dei pari livello (ad esempio, peer1, peer2) che deve approvare la transazione.
Esempio di valore restituito:
{
    "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
Nome metodo originale: init
Questo metodo viene chiamato quando viene distribuito il codice concatenato. Le informazioni utente vengono salvate come Token Admin del codice concatenato.
Payload:
{
    "adminList": "[{\"org_id\":\"{{bc-org-id}}\",\"user_id\":\"{{bc-admin-user}}\"}]"
}
Parametri:
  • adminList array: un array di informazioni {user_id, org_id} che specifica la lista degli amministratori di token. L'array adminList è un parametro obbligatorio.
Esempio di valore restituito:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "fdb7dc89832c8045a333823b77fa24ae628178148dc93b3550040e070d7cd807",
        "payload": "",
        "encode": "UTF-8",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 263
    }
}
initializeDepositToken
Nome metodo originale: initializeDepositToken
Questo metodo crea un token e inizializza le proprietà del token. L'asset e le relative proprietà vengono salvati nel database di stato. Questo metodo può essere richiamato solo da un Token Admin del codice concatenato.
Payload:
{
    "tokenAsset": "{\"token_id\":\"{{bc-token-id}}\",\"token_desc\":\"token_desc value\"}",
    "sameOrgEndorser": true
}
Parametri:
  • tokenAsset: <Token Class>: l'asset token viene passato come parametro a questo metodo. Le proprietà dell'asset token sono descritte nel file modello.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Restituisce:
  • In caso di operazione riuscita, una rappresentazione JSON dell'asset token creato.
Esempio di valore restituito:
{
    "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
    }
}
getAccountHistory
Nome metodo originale: getAccountHistory
Questo metodo GET restituisce i dettagli della cronologia dell'account per un utente e un token specificati.
Query:
/getAccountHistory?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parametri:
  • tokenId: string: l'ID del token.
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
Esempio di valore restituito:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
              "trxId":"2gsdh17fff222467e5667be042e33ce18e804b3e065cca15de306f837e416d7c3e",
              "timeStamp":1629718288,
              "value":{
                 "assetType":"oaccount",
                 "account_id":"oaccount~digicur~b4f45440aa2a7942db64443d047027e9d714d62cba5c3d546d64f368642f622f",
                 "user_id":"user1",
                 "org_id":"Org1MSP",
                 "token_id":"digiCurr101",
                 "token_name":"digicur",
                 "balance":100,
                 "onhold_balance":0,
                 "bapAccountVersion": 1
           },
           {
              "trxId":"9fd07fff222467e5667be042e33ce18e804b3e065cca15de306f837e416d7c3e",
              "timeStamp":1629718288,
              "value":{
                 "assetType":"oaccount",
                 "account_id":"oaccount~digicur~b4f45440aa2a7942db64443d047027e9d714d62cba5c3d546d64f368642f622f",
                 "user_id":"user1",
                 "org_id":"Org1MSP",
                 "token_id":"digiCurr101",
                 "token_name":"digicur",
                 "balance":0,
                 "onhold_balance":0,
                 "bapAccountVersion": 0
              }
           }
        ],
        "encode": "JSON"
    }
}
rejectMint
Nome metodo originale: rejectMint
Questo metodo può essere chiamato da un notaio per rifiutare una richiesta di conio.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "sameOrgEndorser": true
}
Parametri:
  • token_id: string: l'ID del token per rifiutare la coniazione.
  • operation_id: string: l'ID operazione univoco che rappresenta la richiesta di menta.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: releaseHoldTokens
Questo metodo POST rilascia un blocco sui token. Il trasferimento non è completato e tutti i token detenuti sono nuovamente disponibili per il proprietario originale.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "endorsers": {{endorsers}}
}
Parametri:
  • token_id: string: l'ID del token.
  • operation_id: string: ID univoco che identifica l'operazione di blocco. In genere questo ID viene passato dall'applicazione client.
  • endorsers: string[]: un array dei pari livello (ad esempio, peer1, peer2) che deve approvare la transazione.
Esempio di valore restituito:
{
    "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
Nome metodo originale: removeTokenAdmin
Questo metodo POST rimuove un utente come Token Admin del codice concatenato. Questo metodo può essere richiamato solo da un Token Admin del codice concatenato. Un amministratore non può rimuovere se stesso.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parametri:
  • org_id: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • user_id: string: il nome utente o l'ID di posta elettronica dell'utente.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: removeTokenAuditor
Questo metodo POST rimuove un utente come Token Auditor del codice concatenato. Questo metodo può essere richiamato solo da un Token Admin del codice concatenato.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parametri:
  • org_id: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • user_id: string: il nome utente o l'ID di posta elettronica dell'utente.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: removeOrgAdmin
Questo metodo POST rimuove un utente come Org Admin del codice concatenato. Questo metodo può essere chiamato solo da un Token Admin o Org Admin dell'organizzazione specificata.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parametri:
  • org_id: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • user_id: string: il nome utente o l'ID di posta elettronica dell'utente.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: removeOrgAuditor
Questo metodo POST rimuove un utente come Org Auditor del codice concatenato. Questo metodo può essere chiamato solo da un Token Admin o Org Admin dell'organizzazione specificata.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parametri:
  • org_id: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • user_id: string: il nome utente o l'ID di posta elettronica dell'utente.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: removeRole
Questo metodo rimuove un ruolo da un utente specificato. Questo metodo può essere chiamato solo da un Token Admin del codice concatenato o da un Org Admin dell'organizzazione specificata.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "role": "role value (for example minter / burner / notary)",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Parametri:
  • tokenId: string: l'ID del token.
  • role: string: il nome del ruolo da rimuovere dall'utente specificato. I comportamenti mintable e burnable corrispondono alle proprietà minter_role_name e burner_role_name del file di specifica.
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
  • endorsers: string[]: un array dei pari livello (ad esempio, peer1, peer2) che deve approvare la transazione.
Esempio di valore restituito:
{
    "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
Nome metodo originale: requestMint
Questo metodo può essere chiamato da un minter per inviare una richiesta al notaio per creare una quantità specificata di token.
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
}
Parametri:
  • tokenId: string: l'ID del token da coniare.
  • operationId: string: l'ID operazione univoco che rappresenta la richiesta di menta.
  • notaryOrgId: string - L'ID del fornitore di servizi di abbonamento (MSP) del notaio che elaborerà la richiesta.
  • notaryUserId: string - Il nome utente o l'ID e-mail del notaio che elaborerà la richiesta.
  • quantity: number - La quantità di token da zecca.
  • timeToExpiration: l'ora trascorsa la quale la richiesta di conio scade e non è più valida.
  • infoDetails: JSON: oggetto che specifica la categoria (category) e la descrizione (description) della richiesta, come mostrato nell'esempio riportato di seguito.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: burnTokens
Questo metodo POST disattiva o brucia i token dal conto del chiamante della transazione. Il chiamante di questo metodo deve avere un account e il ruolo di masterizzatore. La quantità deve essere compresa nei valori decimali specificati dal parametro decimal del comportamento divisible nel file di specifica. Questo metodo può essere chiamato dal AccountOwner dell'account con il ruolo di masterizzatore.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "quantity": 1,
    "infoDetails": "{\"category\":\"category value\",\"description\":\"description value\"}",
    "sameOrgEndorser": true
}
Parametri:
  • tokenId: string: l'ID del token.
  • quantity: il numero di token da masterizzare.
  • infoDetails: JSON: oggetto che specifica la categoria (category) e la descrizione (description) della richiesta, come mostrato nell'esempio riportato di seguito.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Restituisce:
  • In caso di operazione riuscita, un messaggio di operazione riuscita con la quantità di token bruciati e l'ID account.
Esempio di valore restituito:
{
    "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
Nome metodo originale: setMaxDailyAmount
Questo metodo POST viene utilizzato per impostare il parametro maxDailyAmount nei dettagli del conto per l'importo specificato. Questo metodo può essere chiamato solo da un Token Admin del codice concatenato o da un Org Admin dell'organizzazione specificata.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "tokenId": "{{bc-token-id}}",
    "maxDailyAmount": 1,
    "endorsers": {{endorsers}}
}
Parametri:
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
  • tokenId: string: l'ID del token.
  • maxDailyAmount: number: il valore dell'importo massimo giornaliero per il conto specificato, che definisce l'importo massimo che può essere sottoposto a transazioni giornaliere.
  • endorsers: string[]: un array dei pari livello (ad esempio, peer1, peer2) che deve approvare la transazione.
Esempio di valore restituito:
{
    "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,
            "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
Nome metodo originale: setMaxDailyTransactionCount
Questo metodo POST viene utilizzato per impostare il parametro maxDailyTransactions nei dettagli del conto per l'importo specificato. Questo metodo può essere chiamato solo da un Token Admin del codice concatenato o da un Org Admin dell'organizzazione specificata.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "tokenId": "{{bc-token-id}}",
    "maxDailyTransactions": 1,
    "endorsers": {{endorsers}}
}
Parametri:
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
  • tokenId: string: l'ID del token.
  • maxDailyTransactions: number: valore dell'importo massimo giornaliero per il conto specificato, che definisce il numero massimo di transazioni consentite al giorno.
  • endorsers: string[]: un array dei pari livello (ad esempio, peer1, peer2) che deve approvare la transazione.
Esempio di valore restituito:
{
    "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,
            "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
Nome metodo originale: suspendAccount
Questo metodo sospende un account token fungibile. Se un valore accountStatus non viene trovato nel libro contabile, viene restituito un errore. Questo metodo può essere chiamato solo da un Token Admin del codice concatenato o da un Org Admin dell'organizzazione specificata.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Parametri:
  • tokenId: string: l'ID del token.
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
  • endorsers: string[]: un array dei pari livello (ad esempio, peer1, peer2) che deve approvare la transazione.
Esempio di valore restituito:
{
    "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
Nome metodo originale: transferTokens
Questo metodo trasferisce i token dal chiamante a un account specificato. Il chiamante del metodo deve avere un account. La quantità deve essere compresa nei valori decimali specificati dal parametro decimal del comportamento divisible nel file di specifica.
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}}
}
Parametri:
  • tokenId: string: l'ID del token.
  • toOrgId: string: l'ID del fornitore di servizi di appartenenza (MSP) del ricevente (beneficiario) nell'organizzazione corrente.
  • toUserId: string: il nome utente o l'ID e-mail del destinatario.
  • quantity: number: il numero di token da trasferire.
  • infoDetails: JSON: oggetto che specifica la categoria (category) e la descrizione (description) della richiesta, come mostrato nell'esempio riportato di seguito.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • endorsers: string[]: un array dei pari livello (ad esempio, peer1, peer2) che deve approvare la transazione.
Esempio di valore restituito:
{
    "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
Nome metodo originale: initializeExchangePoolUser
Questo metodo inizializza l'utente del pool di scambio, che è un'attività occasionale. Questo metodo può essere richiamato solo da Token Admin.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parametri:
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: createExchangePoolAccounts
Questo metodo crea i conti token del pool di scambio per un determinato array di ID token. Questo metodo può essere richiamato solo da un Token Admin del codice concatenato.
Payload:
{
    "tokenIds": "[{{bc-token-id}}]",
    "sameOrgEndorser": true
}
Parametri:
  • token_ids: string []: un array di ID token.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: addConversionRate
Questo metodo aggiunge un tasso di conversione per una coppia di token. Il tasso di conversione del token può essere specificato fino a otto posizioni decimali. Questo metodo può essere richiamato solo da un Token Admin del codice concatenato.
Payload:
{
    "fromTokenId": "from_token_id value",
    "toTokenId": "to_token_id value",
    "tokenConversionRate": 10,
    "sameOrgEndorser": true
}
Parametri:
  • fromTokenId: string: l'ID del token da cui eseguire la conversione.
  • toTokenId: string: l'ID del token in cui eseguire la conversione.
  • tokenConversionRate: number: la velocità con cui convertire il token fromTokenId nel token toTokenId.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: updateConversionRate
Questo metodo aggiorna il tasso di conversione corrente per una coppia di token. Il tasso di conversione del token può essere specificato fino a otto posizioni decimali. Questo metodo può essere richiamato solo da un Token Admin del codice concatenato.
Payload:
{
    "fromTokenId": "from_token_id value",
    "toTokenId": "to_token_id value",
    "tokenConversionRate": 20,
    "sameOrgEndorser": true
}
Parametri:
  • fromTokenId: string: l'ID del token da cui eseguire la conversione.
  • toTokenId: string: l'ID del token in cui eseguire la conversione.
  • tokenConversionRate: number: la velocità con cui convertire il token fromTokenId nel token toTokenId.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: mintWithFundingExchangePool
Questo metodo coniuga i token nell'account del chiamante in base all'ID e alla quantità del token specificati. Una percentuale di token dalla quantità coniata viene quindi trasferita nel conto token del pool di scambio.
{
    "tokenId": "{{bc-token-id}}",
    "tokenQuantity": 100,
    "percentageTokenToExchangePool": 20,
    "sameOrgEndorser": true
}
Parametri:
  • tokenId: string: l'ID del token da coniare.
  • tokenQuantity: number: il numero totale di token da zecca.
  • percentageTokenToExchangePool: number: la percentuale di token coniati da trasferire nel conto token del pool di scambio.
  • sameOrgEndorser: boolean: valore booleano che indica se le dichiarazioni a sostegno della transazione devono provenire dalla stessa organizzazione del richiedente.
Esempio di valore restituito:
{
    "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
Nome metodo originale: tokenConversion
Questo metodo converte i token dall'account del chiamante all'account specificato dai valori to_token_id, to_org_id e to_user_id. Questo metodo può essere chiamato dal Token Admin del codice concatenato e da qualsiasi proprietario dell'account token. Un utente del pool di scambio non può chiamare questo metodo.
{
    "fromTokenId": "from_token_id value",
    "toTokenId": "to_token_id value",
    "toOrgId": "to_org_id value",
    "toUserId": "to_user_id value",
    "tokenQuantity": 5,
    "endorsers": {{endorsers}}
}
Parametri:
  • fromTokenId: string: l'ID del token da cui eseguire la conversione.
  • toTokenId: string: l'ID del token in cui eseguire la conversione.
  • toOrgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente per la ricezione dei token.
  • toUserId: string: il nome utente o l'ID di posta elettronica dell'utente per la ricezione dei token.
  • tokenQuantity: number: il numero totale di token da trasferire.
  • endorsers: string[]: un array dei pari livello (ad esempio, peer1, peer2) che deve approvare la transazione.
Esempio di valore restituito:
{
    "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
Nome metodo originale: getConversionRate
Questo metodo GET ottiene il tasso di conversione corrente per una coppia di token. Questo metodo può essere chiamato dal Token Admin, Token Auditor, Org Admin o Org Auditor.
Query:
/getConversionRate?fromTokenId=from_token_id value&toTokenId=to_token_id value
Parametri:
  • fromTokenId: string: l'ID del token da cui eseguire la conversione.
  • toTokenId: string: l'ID del token in cui eseguire la conversione.
Esempio di valore restituito:
{
    "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
Nome metodo originale: getConversionRate
Questo metodo GET restituisce la cronologia di conversione del token per un account token specificato. Questo metodo può essere chiamato dal proprietario dell'account token Token Admin, Token Auditor, Org Admin, Org Auditor o dal proprietario dell'account token.
Query:
/getConversionHistory?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parametri:
  • tokenId: string: l'ID del token.
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
Esempio di valore restituito:
{
    "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"
    }
}
getConversionRateHistory
Nome metodo originale: getConversionRate
Questo metodo restituisce lo storico del tasso di conversione del token per una coppia di token. Questo metodo può essere richiamato da Token Admin, Token Auditor, Org Admin, Org Auditor e da qualsiasi proprietario dell'account token.
/getConversionRateHistory?fromTokenId=from_token_id value&toTokenId=to_token_id value
Parametri:
  • fromTokenId: string: l'ID del token da cui eseguire la conversione, ai fini del calcolo del tasso di conversione.
  • toTokenId: string: l'ID del token in cui eseguire la conversione, ai fini del calcolo del tasso di conversione.
Restituisce:
  • In caso di operazione riuscita, un oggetto JSON con dettagli della cronologia del tasso di conversione.
Esempio di valore restituito:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload":  [
          {
            "trxId": "0b1ba7bc2620e1438b6580365e5c0ab852247ccfa5a3eb2157d3baca02c0e521",
            "timeStamp": "2022-11-30T10:23:38.000Z",
            "value": {
              "assetType": "oconversionRate",
              "conversion_rate_id": "oconversionRate~91c7eeb0614e7a50b1d5ecad559fcbc80b94034648bf405c9491dacf8d57873b",
              "from_token_id": "USD",
              "to_token_id": "INR",
              "conversion_rate": 20
            }
          },
          {
            "trxId": "36fc40ddb3d8308ee7e156af700da131d78d941fe390fc57985b7589e7035d5c",
            "timeStamp": "2022-11-30T10:13:18.000Z",
            "value": {
              "assetType": "oconversionRate",
              "conversion_rate_id": "oconversionRate~91c7eeb0614e7a50b1d5ecad559fcbc80b94034648bf405c9491dacf8d57873b",
              "from_token_id": "USD",
              "to_token_id": "INR",
              "conversion_rate": 10
            }
          }
        ],
        "encode": "JSON"
    }
}
getExchangePoolUser
Nome metodo originale: getExchangePoolUser
Questo metodo GET restituisce i valori ID organizzazione e ID utente per l'utente del pool di scambio. Questo metodo può essere chiamato solo da un Token Admin o Token Auditor del codice concatenato.
Query:
/getExchangePoolUser
Parametri:
  • nessuno
Esempio di valore restituito:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload":  {
           "assetType": "oconversion",
           "convertor_id": "bcb1f3b1442c625d3ce205660c5e717c5858a1fe1e12c325df799a851ceaa09b",
           "org_id": "Org1MSP",
           "user_id": "exchangepooluser"
        },
        "encode": "JSON"
    }
}
getAccountOnHoldBalance
Nome metodo originale: getAccountOnHoldBalance
Questo metodo GET restituisce il saldo in sospeso corrente per un conto e un token specificati. Questo metodo può essere chiamato solo da un Token Admin, Token Auditor, Org Admin, Org Auditor o AccountOwner dell'account.
Query:
/getAccountOnHoldBalance?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parametri:
  • tokenId: string: l'ID del token.
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID e-mail dell'utente.
Esempio di valore restituito:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload":  {
            "msg":"Total Holding Balance is: 0","holding_balance":0
        },
        "encode": "JSON"
    }
}
getAccountStatus
Nome metodo originale: getAccountStatus
Questo metodo GET recupera lo stato corrente dell'account token. Questo metodo può essere chiamato dal proprietario dell'account token Token Admin, Token Auditor, Org Admin, Org Auditor o dal proprietario dell'account token.
Query:
/getAccountStatus?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Parametri:
  • tokenId: string: l'ID del token.
  • orgId: string: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
  • userId: string: il nome utente o l'ID di posta elettronica dell'utente.
Esempio di valore restituito:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload":  {
            "assetType": "oaccountStatus",
            "status_id": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
            "account_id": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
            "status": "active"
        },
        "encode": "JSON"
    }
}
getAccountsByRole
Nome metodo originale: getAccountsByRole
Questo metodo restituisce un elenco di tutti gli ID account per un ruolo specificato. Questo metodo può essere richiamato solo da un Token Admin del codice concatenato.
Query:
/getAccountsByRole?tokenId={{bc-token-id}}&role=role value (for example minter / burner / notary)
Parametri:
  • tokenId: string: l'ID del token.
  • role: string: il nome del ruolo da cercare.
Esempio di valore restituito:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload":  {
            "accounts":["oaccount~digicur~b4f45440aa2a7942db64443d047027e9d714d62cba5c3d546d64f368642f622f"]
        },
        "encode": "JSON"
    }
}