Wholesale CBDC Wrapper API Package

Oracle Blockchain Platform Digital Assets Edition inclut un package d'API de wrapper qui étend l'API REST pour prendre en charge les opérations propres à CBDC de gros.

Le package d'API wrapper utilise le service API Gateway et OCI Functions, qui sont créés à l'aide d'une pile Resource Manager sur Oracle Cloud Infrastructure (OCI), pour déployer des routages d'API spécialement conçus pour l'application CBDC de gros. Le package d'API de wrapper CBDC de gros est téléchargeable à partir de la console Oracle Blockchain Platform et inclut les composants suivants.
  • WholesaleCBDCWrapperAPI.zip, fichier d'archive contenant le package d'API de wrapper, y compris les scripts Terraform requis pour le déploiement. Vous déployez ce fichier vers une pile Resource Manager sur OCI afin de créer les ressources Oracle nécessaires pour les API de wrapper.
  • WholesaleCBDC_WrapperAPI.postman_collection.json, collection Postman qui vous permet de tester les API de wrapper déployées. La collection inclut des demandes préconfigurées avec des adresses et des charges utiles correspondant aux API définies dans le package d'API de wrapper.

API de wrapper

activateCBDCAccount
Nom de la méthode d'origine : activateAccount
Cette méthode POST active un compte de jeton. Cette méthode ne peut être appelée que par Token Admin ou Org Admin de l'organisation indiquée. Les comptes supprimés ne peuvent pas être activés.
Charge utile:
{
    "tokenId": "{{bc-token-id}}",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Paramètres :
  • tokenId: string : ID du jeton.
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • endorsers: string[] : tableau des homologues (par exemple, peer1, peer2) qui doit approuver la transaction.
Renvoie :
  • En cas de succès, représentation JSON de l'objet de statut de compte pour le compte de jeton spécifié.
Exemple de valeur renvoyée :
{
    "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
    }
}
Paramètres :
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
addCBAdmin
Nom de la méthode d'origine : addTokenAdmin
Cette méthode POST ajoute un utilisateur en tant que Token Admin du code chaîne de jeton. La méthode ne peut être appelée que par un Token Admin du code chaîne de jeton. Le premier appel provient de l'administrateur qui instancie le code chaîne.
Charge utile:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "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
    }
}
addCBAuditor
Nom de la méthode d'origine : addTokenAuditor
Cette méthode POST ajoute des auditeurs de jetons au code chaîne de jeton. Cette méthode ne peut être appelée que par Token Admin du code chaîne.
Charge utile:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "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
    }
}
addFIAdmin
Nom de la méthode d'origine : addOrgAdmin
Cette méthode ajoute les administrateurs d'organisation au code chaîne de jeton. Cette méthode ne peut être appelée que par Token Admin ou Org Admin de l'organisation indiquée.
Charge utile:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :

{
    "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
    }
}
addFIAuditor
Nom de la méthode d'origine : addOrgAuditor
Cette méthode ajoute des auditeurs d'organisation au code chaîne de jeton. Cette méthode ne peut être appelée que par Token Admin ou Org Admin de l'organisation indiquée.
Charge utile:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "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
Nom de la méthode d'origine : addRole
Cette méthode ajoute le rôle à l'utilisateur et au jeton spécifiés. Les ID de compte sont formés en créant un hachage SHA-256 de l'ID de jeton concaténé, de l'ID d'organisation et de l'ID utilisateur. Cette méthode ne peut être appelée que par Token Admin ou Org Admin de l'organisation indiquée.
Charge utile:
{
    "tokenId": "{{bc-token-id}}",
    "role": "role value (for example minter / burner / notary)",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Paramètres :
  • tokenId: string : ID du jeton.
  • role: string : nom du rôle à ajouter à l'utilisateur spécifié.
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "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
    }
}
approveCBDCCreation
Nom de la méthode d'origine : approveMint
Les notaires peuvent appeler cette méthode POST pour approuver une demande de menthe.
Charge utile:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "sameOrgEndorser": true
}
Paramètres :
  • tokenId: string : ID du jeton.
  • operationId: string : ID d'opération unique de la demande de menthe à approuver.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "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
    }
}
approveCBDCRetirement
Nom de la méthode d'origine : approveBurn
Les notaires peuvent appeler cette méthode POST pour approuver une demande de gravure.
Charge utile:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "sameOrgEndorser": true
}
Paramètres :
  • tokenId: string : ID du jeton.
  • operationId: string : ID d'opération unique de la demande de menthe à approuver.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "8252371040e41753fd843bd086692f4e1ee7d89ffa3a50bfa121c5f1565f922f",
        "payload": {
            "msg": "Successfully burned 1 tokens from account id: oaccount~0d7b3f73aea28065017ce8b79c0bb19256dc0cb475a0b2a85192bd110f69535c (Org-Id: CB, User-Id: retirer_user_cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 209
    }
}
approveHoldCBDCTokens
Nom de la méthode d'origine : executeHoldTokens
Les notaires appellent cette méthode pour approuver un blocage sur les jetons, ce qui déclenche le transfert des jetons du payeur au bénéficiaire dans ce scénario commercial. La quantité de jetons bloqués précédemment par le propriétaire du jeton est désormais transférée au destinataire. Si la valeur quantity est inférieure à la valeur de blocage réelle, le montant restant est à nouveau disponible pour le propriétaire du jeton. Si le comportement roles est indiqué dans la section behaviors du modèle de jeton et que la valeur notary_role_name est définie, le compte de l'appelant doit avoir un rôle de notaire. Sinon, tout appelant ayant un compte peut fonctionner comme notaire.
Charge utile:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "quantity": 1,
    "endorsers": {{endorsers}}
}
Paramètres :
  • tokenId: string : ID du jeton.
  • operationId: string : ID d'opération unique de la demande de menthe à approuver.
  • quantity: number : nombre de jetons détenus à transférer.
  • endorsers: string[] : tableau des homologues (par exemple, peer1, peer2) qui doit approuver la transaction.
Exemple de valeur renvoyée :
{
    "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
Nom de la méthode d'origine : associateTokenToAccount
Cette méthode POST associe un ID de compte spécifié à un jeton spécifié. Cette méthode ne peut être appelée que par Token Admin ou Org Admin de l'organisation indiquée.
Charge utile:
{
    "accountId": "account_id value",
    "tokenId": "{{bc-token-id}}",
    "endorsers": {{endorsers}}
}
Paramètres :
  • accountId: string – ID du compte.
  • tokenId: string : ID du jeton.
  • endorsers: string[] : tableau des homologues (par exemple, peer1, peer2) qui doit approuver la transaction.
Exemple de valeur renvoyée :
{
    "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,
            "application_groups": [
                "System_Admins"
            ],
            "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
Nom de la méthode d'origine : createAccount
Cette méthode crée un compte pour un utilisateur et un jeton spécifiés. Un compte doit être créé pour tout utilisateur qui aura des jetons à tout moment. Les comptes assurent le suivi des soldes, des soldes bloqués et de l'historique des transactions. Un ID de compte est un ensemble alphanumérique de caractères, précédé de oaccount~<token asset name>~ et suivi d'un hachage du nom utilisateur ou de l'ID de courriel (userId) du propriétaire de l'instance ou de l'utilisateur qui est connecté à l'instance, de l'ID de fournisseur de services d'adhésion (orgId) de l'utilisateur dans l'organisation réseau en cours. Cette méthode peut être appelée uniquement par Token Admin du code chaîne ou par Org Admin de l'organisation indiquée.
Charge utile:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "tokenType": "fungible",
    "applicationGroups": "[\"application_groups value\"]",
    "dailyLimits": "{\"max_daily_amount\":10000,\"max_daily_transactions\":100}",
    "endorsers": {{endorsers}}
}
Paramètres :
  • orgId : ID du fournisseur de services d'adhésion de l'utilisateur pour lequel créer le compte. L'ID doit commencer par un caractère alphanumérique et peut inclure des lettres, des chiffres et des caractères spéciaux tels que des traits de soulignement (_), des points (.), des signes arobase (@) et des tirets (-).
  • userId : nom d'utilisateur ou adresse électronique de l'utilisateur. L'ID doit commencer par un caractère alphanumérique et peut inclure des lettres, des chiffres et des caractères spéciaux tels que des traits de soulignement (_), des points (.), des signes arobase (@) et des tirets (-).
  • tokenType: TokenType : type de jeton, qui doit être fungible.
  • applicationGroups: string[] : liste des groupes d'applications auxquels l'ID utilisateur appartient, qui définissent les associations de l'utilisateur dans l'application CBDC.
  • dailyLimits: JSON object : objet JSON du type suivant.
    {
         "max_daily_amount": 100000
         "max_daily_transactions": 10000
     }
    Dans l'exemple, la valeur max_daily_amount est la quantité maximale de jetons pouvant être traités quotidiennement et la valeur max_daily_transactions est le nombre maximal de transactions pouvant être effectuées quotidiennement.
  • endorsers: string[] : tableau des homologues (par exemple, peer1, peer2) qui doit approuver la transaction.
Exemple de valeur renvoyée :
{
    "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,
            "application_groups": [
                "System_Admins"
            ],
            "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
    }
}
getAllActiveCBDCAccounts
Nom de la méthode d'origine : getAllActiveAccounts
Cette méthode GET renvoie tous les comptes actifs associés à l'ID de jeton spécifié.
Interroger :
/getAllActiveCBDCAccounts?tokenId={{bc-token-id}}
Paramètres :
  • tokenId: string : ID du jeton.
Renvoie :
  • En cas de succès, message contenant les détails de l'utilisateur. La sortie varie en fonction du rôle de l'utilisateur, comme indiqué dans les exemples suivants.
Exemple de valeur renvoyée (administrateur de jeton, auditeur de jeton) :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "key": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
                "non_account_role_name": [
                    "token_admin"
                ],
                "role_name": null,
                "valueJson": {
                    "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,
                    "application_groups": [
                        "System_Admins"
                    ],
                    "max_daily_amount": 10000,
                    "daily_amount": 0,
                    "max_daily_transactions": 1000,
                    "daily_transactions": 0,
                    "current_date": "2024-11-20T00:00:00.000Z"
                }
            }
        ],
        "encode": "JSON"
    }
}
Exemple de valeur renvoyée (administrateur de l'organisation, auditeur de l'organisation) :
{
  "returnCode": "Success",
  "error": "",
  "result": {
      "payload": [
          {
              "key": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
              "non_account_role_name": [
                  "token_admin"
              ],
              "role_name": null,
              "valueJson": {
                  "account_id": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
                  "org_id": "CB",
                  "user_id": "admin_user_cb",
                  "token_id": "USD",
                  "max_daily_amount": 10000,
                  "max_daily_transactions": 1000
              }
          }
      ],
      "encode": "JSON"
  }
}
Exemple de valeur renvoyée (tous les autres utilisateurs) :
{
  "returnCode": "Success",
  "error": "",
  "result": {
      "payload": [
          {
              "key": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
              "non_account_role_name": [
                  "token_admin"
              ],
              "role_name": null,
              "valueJson": {
                  "account_id": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
                  "org_id": "CB",
                  "user_id": "admin_user_cb",
                  "token_id": "USD",
                  "max_daily_amount": 10000,
                  "max_daily_transactions": 1000
              }
          }
      ],
      "encode": "JSON"
  }
}
getAllSuspendedCBDCAccounts
Nom de la méthode d'origine : getAllSuspendedAccounts
Cette méthode GET renvoie tous les comptes suspendus associés à l'ID de jeton spécifié.
Interroger :
/getAllSuspendedCBDCAccounts?tokenId={{bc-token-id}}
Paramètres :
  • tokenId: string : ID du jeton.
Renvoie :
  • En cas de succès, message contenant les détails de l'utilisateur. La sortie varie en fonction du rôle de l'utilisateur, comme indiqué dans les exemples suivants.
Exemple de valeur renvoyée (administrateur de jeton, auditeur de jeton) :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "key": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
                "non_account_role_name": null,
                "role_name": null,
                "valueJson": {
                    "assetType": "oaccount",
                    "bapAccountVersion": 1,
                    "account_id": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
                    "user_id": "user1_fi1",
                    "org_id": "FI1",
                    "token_type": "fungible",
                    "token_id": "USD",
                    "token_name": "cbdc",
                    "balance": 5,
                    "onhold_balance": 0,
                    "onhold_burn_balance": 0,
                    "application_groups": [
                        "Org_Users"
                    ],
                    "max_daily_amount": 10000,
                    "daily_amount": 0,
                    "max_daily_transactions": 1000,
                    "daily_transactions": 0,
                    "current_date": "2024-11-20T00:00:00.000Z"
                }
            }
        ],
        "encode": "JSON"
    }
}
Exemple de valeur renvoyée (administrateur de l'organisation, auditeur de l'organisation) :
{
  "returnCode": "Success",
  "error": "",
  "result": {
      "payload": [
          {
              "key": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
              "non_account_role_name": null,
              "role_name": null,
              "valueJson": {
                  "account_id": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
                  "org_id": "FI1",
                  "user_id": "user1_fi1",
                  "token_id": "USD",
                  "max_daily_amount": 10000,
                  "max_daily_transactions": 1000
              }
          }
      ],
      "encode": "JSON"
  }
}
Exemple de valeur renvoyée (tous les autres utilisateurs) :
{
  "returnCode": "Success",
  "error": "",
  "result": {
      "payload": [
          {
              "key": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
              "non_account_role_name": null,
              "role_name": null,
              "valueJson": {
                  "account_id": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
                  "org_id": "FI1",
                  "user_id": "user1_fi1",
                  "token_id": "USD"
              }
          }
      ],
      "encode": "JSON"
  }
}
getApproverActionHistory
Nom de la méthode d'origine : getActionHistory
Cette méthode GET extrait l'historique des approbations ou des rejets effectués par l'appelant pour les opérations de menthe, de combustion et de transfert (émission), y compris les détails de l'organisation et les ID utilisateur des comptes concernés (expéditeur, destinataire et notaire). Cette méthode ne peut être appelée que par un notaire, Token Admin, Token Auditor, Org Admin ou Org Auditor.
Interroger :
/getApproverActionHistory?tokenId={{bc-token-id}}
Paramètres :
  • tokenId: string : ID du jeton.
Exemple de valeur renvoyée :
{
  "returnCode": "Success",
  "error": "",
  "result": {
      "payload": [
          {
              "from_account_id": "oaccount~0d7b3f73aea28065017ce8b79c0bb19256dc0cb475a0b2a85192bd110f69535c",
              "from_org_id": "CB",
              "from_user_id": "retirer_user_cb",
              "holding_id": "ohold~cbdc~USD~eaf6",
              "holding_status": "REJECT_BURN",
              "last_updated_time": "2024-11-26T21:43:22.000Z",
              "notary_account_id": null,
              "notary_org_id": null,
              "notary_user_id": null,
              "operation_id": null,
              "quantity": 3,
              "timetoexpiration": null,
              "to_account_id": "",
              "to_org_id": null,
              "to_user_id": null,
              "token_id": "USD",
              "token_name": null
          },
          {
              "from_account_id": "oaccount~0d7b3f73aea28065017ce8b79c0bb19256dc0cb475a0b2a85192bd110f69535c",
              "from_org_id": "CB",
              "from_user_id": "retirer_user_cb",
              "holding_id": "ohold~cbdc~USD~0031",
              "holding_status": "REJECT_BURN",
              "last_updated_time": "2024-11-26T21:43:15.000Z",
              "notary_account_id": null,
              "notary_org_id": null,
              "notary_user_id": null,
              "operation_id": null,
              "quantity": 2,
              "timetoexpiration": null,
              "to_account_id": "",
              "to_org_id": null,
              "to_user_id": null,
              "token_id": "USD",
              "token_name": null
          }
      ],
      "encode": "JSON"
  }
}
getCBDCAccount
Nom de la méthode d'origine : getAccount
Cette méthode GET renvoie les détails de compte pour un utilisateur et un jeton spécifiés. Cette méthode peut uniquement être appelée par Token Admin ou Token Auditor du code chaîne, par Org Admin ou Org Auditor de l'organisation indiquée ou par AccountOwner du compte.
Interroger :
/getCBDCAccount?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Paramètres :
  • tokenId: string : ID du jeton.
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
Exemple de valeur renvoyée :
{
    "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,
            "application_groups": [
                "System_Admins"
            ],
            "max_daily_amount": 10000,
            "daily_amount": 0,
            "max_daily_transactions": 1000,
            "daily_transactions": 0,
            "current_date": "2024-11-20T00:00:00.000Z"
        },
        "encode": "JSON"
    }
}
getCBDCAccountBalance
Nom de la méthode d'origine : getAccountBalance
Cette méthode GET renvoie le solde actuel pour un compte et un jeton spécifiés. Cette méthode peut uniquement être appelée par Token Admin ou Token Auditor du code chaîne, par Org Admin ou Org Auditor de l'organisation indiquée ou par AccountOwner du compte.
/getCBDCAccountBalance?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Paramètres :
  • tokenId: string : ID du jeton.
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "msg": "Current Balance is: 100",
            "user_balance": 100
        },
        "encode": "JSON"
    }
}
getCBDCAccountsByUser
Nom de la méthode d'origine : getAccountsByUser
Cette méthode renvoie la liste de tous les ID de compte pour un ID d'organisation et un ID d'utilisateur spécifiés. Cette méthode peut uniquement être appelée par Token Admin ou Token Auditor du code chaîne, par Org Admin ou Org Auditor de l'organisation indiquée ou par AccountOwner du compte.
/getCBDCAccountsByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
Paramètres :
  • orgId string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId string : nom d'utilisateur ou adresse électronique de l'utilisateur.
Exemple de valeur renvoyée :
{
    "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,
                "application_groups": [
                    "System_Admins"
                ],
                "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,
                "application_groups": [
                    "System_Admins"
                ],
                "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,
                "application_groups": [
                    "System_Admins"
                ],
                "max_daily_amount": 10000,
                "daily_amount": 0,
                "max_daily_transactions": 100,
                "daily_transactions": 0,
                "current_date": "2024-12-09T00:00:00.000Z"
            }
        ],
        "encode": "JSON"
    }
}
getCBDCAccountTransactionHistory
Nom de la méthode d'origine : getAccountTransactionHistory
Cette méthode renvoie un tableau des détails de l'historique des transactions de compte pour un utilisateur et un jeton spécifiés. Cette méthode peut uniquement être appelée par Token Admin ou Token Auditor du code chaîne, par Org Admin ou Org Auditor de l'organisation indiquée ou par AccountOwner du compte.
/getCBDCAccountTransactionHistory?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Paramètres :
  • tokenId: string : ID du jeton.
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
Exemple de valeur renvoyée :
{
    "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"
    }
}
getAccountTransactionHistoryWithFilters
Nom de la méthode d'origine : getAccountTransactionHistoryWithFiltersFromRichHistDB
Cette méthode renvoie les détails de l'historique des transactions de compte à partir de la base de données d'historique enrichi. Cette méthode peut uniquement être appelée par Token Admin ou Token Auditor du code chaîne, par Org Admin ou Org Auditor de l'organisation indiquée ou par AccountOwner du compte.
/getCBDCAccountTransactionHistoryWithFilters?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"}
Paramètres :
  • tokenId: string : ID du jeton.
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • customEndpoint : adresse de service RESTful de la base de données d'historique enrichi à partir de laquelle extraire l'historique des transactions.
  • bearerToken : jeton à utiliser pour appeler l'adresse RESTful afin de s'assurer que la demande est autorisée.
  • filters: JSON object : paramètre facultatif. Si ce champ est vide, tous les enregistrements sont renvoyés. La propriété pageSize détermine le nombre d'enregistrements à renvoyer. Si pageSize est égal à 0, la taille de page par défaut est de 20. La propriété bookmark détermine l'index de début des enregistrements à renvoyer. Les propriétés startTime et endTime doivent être spécifiées au format RFC-3339.
Exemple de valeur renvoyée :
{
    "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"
    }
}
getCBDCRetiredQuantity
Nom de la méthode d'origine : getBurnQuantity
Cette méthode GET renvoie la quantité totale de jetons brûlés pour une organisation spécifiée. Cette méthode peut uniquement être appelée par Token Admin, Token Auditor ou par un utilisateur doté du rôle de brûleur.
/getCBDCRetiredQuantity?tokenId={{bc-token-id}}
Paramètres :
  • tokenId: string : ID du jeton.
Exemple de valeur renvoyée :
{
  "returnCode": "Success",
  "error": "",
  "result": {
      "payload": {
          "burnt_quantity": 31
      },
      "encode": "JSON"
  }
}
getNetCBDCTokens
Nom de la méthode d'origine : getNetTokens
Cette méthode GET renvoie le nombre total net de jetons disponibles dans le système pour un jeton spécifié. Le total du jeton net correspond à la quantité de jetons restants après la gravure des jetons. Cette méthode peut uniquement être appelée par Token Admin ou Token Auditor du code chaîne, ou par Org Admin ou Org Auditor.
/getNetCBDCTokens?tokenId={{bc-token-id}}
Paramètres :
  • tokenId: string : ID du jeton.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "msg": "Net supply of token for Token Id: USD is 878 tokens.",
            "quantity": 878
        },
        "encode": "JSON"
    }
}
getOnHoldIds
Nom de la méthode d'origine : getOnHoldIds
Cette méthode GET renvoie la liste de tous les ID de mise en attente pour un compte spécifié. Cette méthode peut uniquement être appelée par Token Admin ou Token Auditor du code chaîne, par Org Admin ou Org Auditor de l'organisation indiquée ou par AccountOwner du compte.
/getOnHoldIds?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Paramètres :
  • tokenId: string : ID du jeton.
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
Exemple de valeur renvoyée :
{
    "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"
    }
}
getPendingCBDCIssuance
Nom de la méthode d'origine : getPendingIssuance
Cette méthode extrait toutes les transactions d'émission (transfert) en attente auxquelles l'appelant est affecté en tant qu'approbateur, y compris les détails de l'organisation et les ID utilisateur des comptes concernés (expéditeur, destinataire et notaire). Cette méthode peut uniquement être appelée par Token Admin ou Token Auditor du code chaîne, par Org Admin ou Org Auditor, ou par Notary.
/getPendingCBDCIssuance?tokenId={{bc-token-id}}
Paramètres :
  • tokenId: string : ID du jeton.
Exemple de valeur renvoyée :
{
  "returnCode": "Success",
  "error": "",
  "result": {
      "payload": [
          {
              "asset_type": "ONHOLD",
              "category": "category value",
              "from_account_id": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
              "from_org_id": "CB",
              "from_user_id": "creator_user_cb",
              "holding_id": "ohold~cbdc~USD~8e314",
              "notary_account_id": "oaccount~2eb5f8a9bc561f8f41a4ea3be9511958cc6684ef14f2337ca396efc301b627d8",
              "notary_org_id": "CB",
              "notary_user_id": "manager_user_cb",
              "operation_id": "8e314",
              "quantity": 10,
              "timetoexpiration": "0",
              "to_account_id": "oaccount~44b844deccc6c314e14b8b9b95b51db5c8de499dbdbd3def2a44ba54c899c142",
              "to_org_id": "FI1",
              "to_user_id": "officer_user1_fi1",
              "token_id": "USD",
              "token_name": "cbdc"
          },
          {
              "asset_type": "ONHOLD",
              "category": "category value",
              "from_account_id": "oaccount~51e676d7182a02ea7418ef58a6d54ecfe3858ef40b4ffb3d859b320da3921594",
              "from_org_id": "CB",
              "from_user_id": "issuer_user_cb",
              "holding_id": "ohold~cbdc~USD~8e315",
              "notary_account_id": "oaccount~2eb5f8a9bc561f8f41a4ea3be9511958cc6684ef14f2337ca396efc301b627d8",
              "notary_org_id": "CB",
              "notary_user_id": "manager_user_cb",
              "operation_id": "8e315",
              "quantity": 10,
              "timetoexpiration": "0",
              "to_account_id": "oaccount~44b844deccc6c314e14b8b9b95b51db5c8de499dbdbd3def2a44ba54c899c142",
              "to_org_id": "FI1",
              "to_user_id": "officer_user1_fi1",
              "token_id": "USD",
              "token_name": "cbdc"
          }
      ],
      "encode": "JSON"
  }
}
getPendingCBDCRequest
Nom de la méthode d'origine : getPendingRequest
Cette méthode extrait toutes les demandes en attente d'un type spécifié pour lesquelles l'appelant est affecté en tant qu'approbateur. Cette méthode peut uniquement être appelée par Token Admin ou Token Auditor du code chaîne ou par Notary.
/getPendingCBDCRequest?tokenId={{bc-token-id}}&requestType=request_type value
Paramètres :
  • tokenId: string : ID du jeton.
  • requestType: string : type de transaction. Par exemple, mint ou burn.
Exemple de valeur renvoyée :
{
  "returnCode": "Success",
  "error": "",
  "result": {
      "payload": [
          {
              "valueJson": {
                  "assetType": "ohold",
                  "holding_id": "ohold~cbdc~USD~op123",
                  "operation_id": "op123",
                  "token_id": "USD",
                  "token_name": "cbdc",
                  "operation_type": "mint",
                  "status": "pending",
                  "from_account_id": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
                  "to_account_id": "",
                  "notary_account_id": "oaccount~2eb5f8a9bc561f8f41a4ea3be9511958cc6684ef14f2337ca396efc301b627d8",
                  "quantity": 10,
                  "time_to_expiration": "0",
                  "category": "category value",
                  "description": "description value"
              }
          }
      ],
      "encode": "JSON"
  }
}
getTotalBalanceByCallerOrgId
Nom de la méthode d'origine : getTotalBalanceByCallerOrgId
Cette méthode extrait le solde total de l'organisation de l'appelant. Cette méthode ne peut être appelée que par un Token Admin, Token Auditor, Org Admin, Org Auditor ou tout propriétaire de compte.
/getTotalCBDCBalanceByCallerOrgId
Paramètres :
  • tokenId: string : ID du jeton.
Exemple de valeur renvoyée :
{
  "returnCode": "Success",
  "error": "",
  "result": {
      "payload": [
          {
              "totalBalance": 704
          }
      ],
      "encode": "JSON"
  }
}
getTotalCreatedCBDCTokens
Nom de la méthode d'origine : getTotalMintedTokens
Cette méthode renvoie le nombre total de jetons extraits pour un jeton spécifié. Cette méthode peut uniquement être appelée par Token Admin, Token Auditor, Org Admin ou Org Auditor.
Interroger :
/getTotalCreatedCBDCTokens?tokenId={{bc-token-id}}
Paramètres :
  • tokenId: string : ID du jeton.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "msg": "Total minted token for Token Id: USD is 910 tokens.",
            "quantity": 910
        },
        "encode": "JSON"
    }
}
getTransactionWithBlockNumber
Nom de la méthode d'origine : getTransactionWithBlockNumber
Cette méthode GET renvoie les détails de la transaction pour l'ID de transaction spécifié.
Interroger :
/getTransactionWithBlockNumber?tokenId={{bc-token-id}}&transactionId=transaction_id value
Paramètres :
  • tokenId: string : ID du jeton.
  • transactionId: string : ID de la transaction.
Exemple de valeur renvoyée :
{
  "returnCode": "Success",
  "error": "",
  "result": {
      "payload": [
          {
              "blockNo": 82,
              "key": "otransaction~24f391919a8837d654beaa7346148ea8b2b9704624aef482ce68078c485f5b1b",
              "metadata": null,
              "txnNo": 0,
              "value": null,
              "valueJson": {
                  "assetType": "otransaction",
                  "transaction_id": "otransaction~24f391919a8837d654beaa7346148ea8b2b9704624aef482ce68078c485f5b1b",
                  "token_id": "USD",
                  "from_account_id": "",
                  "from_account_balance": 0,
                  "from_account_onhold_balance": 0,
                  "to_account_id": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
                  "to_account_balance": 100,
                  "to_account_onhold_balance": 0,
                  "transaction_type": "REQUEST_MINT",
                  "amount": 200,
                  "timestamp": "2024-11-20T06:48:42.000Z",
                  "number_of_sub_transactions": 0,
                  "holding_id": "",
                  "sub_transaction": "false",
                  "description": ""
              }
          }
      ],
      "encode": "JSON"
  }
}
getUserByCBDCAccountId
Nom de la méthode d'origine : getUserByAccountId
Cette méthode renvoie les détails utilisateur (orgId, userId et tokenId) pour un compte spécifié. Cette méthode peut uniquement être appelée par Token Admin ou Token Auditor du code chaîne, ou par Org Admin ou Org Auditor de l'organisation indiquée.
Interroger :
/getUserByCBDCAccountId?accountId=account_id value
Paramètres :
  • accountId: string – ID du compte.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "token_id": "USD",
            "user_id": "admin_user_cb",
            "org_id": "CB"
        },
        "encode": "JSON"
    }
}
getUsersByRole
Nom de la méthode d'origine : getUsersByRole
Cette méthode GET renvoie la liste de tous les utilisateurs pour un rôle et un jeton spécifiés. Cette méthode ne peut être appelée que par Token Admin ou Token Auditor du code chaîne.
Interroger :
/getUsersByRole?tokenId={{bc-token-id}}&role=role value (for example minter / burner / notary)
Paramètres :
  • tokenId: string : ID du jeton.
  • role: string : nom du rôle à rechercher.
Exemple de valeur renvoyée :
{
    "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"
    }
}
holdCBDCTokens
Nom de la méthode d'origine : holdTokens
Cette méthode crée un blocage pour le compte du propriétaire des jetons avec le compte to_account_id. Un compte de notaire est spécifié, qui est chargé de terminer ou de lever le blocage. Lorsque le blocage est créé, le solde de jetons spécifié par le payeur est bloqué. Un solde bloqué ne peut pas être transféré tant que le blocage n'est pas terminé ou levé. L'appelant de cette méthode doit avoir un compte déjà créé.
Charge utile:
{
    "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}}
}
Paramètres :
  • tokenId: string : ID du jeton.
  • operationId: string : ID unique permettant d'identifier l'opération de blocage. Cet ID est généralement transmis par l'application client.
  • toOrgId: string : ID du fournisseur de services d'adhésion du destinataire dans l'organisation actuelle.
  • toUserId: string : nom d'utilisateur ou ID courriel du destinataire.
  • notaryOrgId: string : ID du fournisseur de services d'adhésion du notaire dans l'organisation actuelle.
  • notaryUserId: string : nom d'utilisateur ou ID courriel du notaire.
  • quantity: number : nombre de jetons à mettre en attente.
  • timeToExpiration : heure à laquelle la mise en attente expire. Spécifiez 0 pour un blocage permanent. Sinon, utilisez le format RFC-3339. Par exemple, 2021-06-02T12 :46 :06Z.
  • infoDetails: JSON : description et catégorie, comme indiqué dans l'exemple suivant.
    {
       "category" : "category input",
       "description" : "description input"
    }
  • endorsers: string[] : tableau des homologues (par exemple, peer1, peer2) qui doit approuver la transaction.
Exemple de valeur renvoyée :
{
    "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
Nom de la méthode d'origine : init
Cette méthode est appelée lorsque le code chaîne est déployé. Les informations utilisateur sont enregistrées en tant que Token Admin du code chaîne.
Charge utile:
{
    "adminList": "[{\"org_id\":\"{{bc-org-id}}\",\"user_id\":\"{{bc-admin-user}}\"}]"
}
Paramètres :
  • adminList array : tableau d'informations {user_id, org_id} qui indique la liste des administrateurs de jeton. Le tableau adminList est un paramètre obligatoire.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "fdb7dc89832c8045a333823b77fa24ae628178148dc93b3550040e070d7cd807",
        "payload": "",
        "encode": "UTF-8",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 263
    }
}
initializeCBDCToken
Nom de la méthode d'origine : initializeCBDCToken
Cette méthode crée un jeton et initialise les propriétés du jeton. La ressource et ses propriétés sont enregistrées dans la base de données d'état. Cette méthode ne peut être appelée que par un élément Token Admin du code chaîne.
Charge utile:
{
    "tokenAsset": "{\"token_id\":\"{{bc-token-id}}\",\"token_desc\":\"token_desc value\",\"Currency_Name\":\"Currency_Name value\"}",
    "sameOrgEndorser": true
}
Paramètres :
  • tokenAsset: <Token Class> : la ressource de jeton est transmise en tant que paramètre à cette méthode. Les propriétés de la ressource de jeton sont décrites dans le fichier de modèle.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Renvoie :
  • En cas de succès, représentation JSON de la ressource de jeton créée.
Exemple de valeur renvoyée :
{
    "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
            },
            "currency_name": "currency_name value",
            "token_to_currency_ratio": 999
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 267
    }
}
rejectCBDCCreation
Nom de la méthode d'origine : rejectMint
Cette méthode peut être appelée par un notaire mineur pour rejeter une demande de frappe.
Charge utile:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "sameOrgEndorser": true
}
Paramètres :
  • tokenId: string : ID du jeton à rejeter.
  • operationId: string : ID d'opération unique qui représente la demande menthe.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "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
    }
}
rejectCBDCRetirement
Nom de la méthode d'origine : rejectBurn
Cette méthode peut être appelée par un notaire pour rejeter une demande de combustion.
Charge utile:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "sameOrgEndorser": true
}
Paramètres :
  • tokenId: string : ID du jeton à rejeter pour gravure.
  • operationId: string : ID d'opération unique qui représente la demande de gravure.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "474a08183986c84fe321aa925670539db3b1bc90b02fa65956ad8c771fff5bbe",
        "payload": {
            "msg": "Successfully rejected burn request with Operation Id 'burn1234' to burn 10 tokens of token id USD"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 210
    }
}
rejectHoldCBDCTokens
Nom de la méthode d'origine : releaseHoldTokens
Cette méthode POST libère un blocage sur les jetons. Le transfert n'est pas terminé et tous les jetons détenus sont à nouveau disponibles pour le propriétaire d'origine. Cette méthode peut être appelée par l'ID AccountOwner avec le rôle notary dans la limite de temps spécifiée ou par le payeur, le bénéficiaire ou le notaire après la limite de temps spécifiée.
Charge utile:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "endorsers": {{endorsers}}
}
Paramètres :
  • tokenId: string : ID du jeton.
  • operationId: string : ID unique permettant d'identifier l'opération de blocage. Cet ID est généralement transmis par l'application client.
  • endorsers: string[] : tableau des homologues (par exemple, peer1, peer2) qui doit approuver la transaction.
Exemple de valeur renvoyée :
{
    "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
    }
}
removeCBAdmin
Nom de la méthode d'origine : removeTokenAdmin
Cette méthode POST supprime un utilisateur en tant que Token Admin du code chaîne. Cette méthode ne peut être appelée que par un Token Admin du code chaîne. Un administrateur ne peut pas se retirer lui-même.
Charge utile:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "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
    }
}
removeCBAuditor
Nom de la méthode d'origine : removeTokenAuditor
Cette méthode POST supprime un utilisateur en tant que Token Auditor du code chaîne. Cette méthode ne peut être appelée que par un Token Admin du code chaîne.
Charge utile:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "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
    }
}
removeFIAdmin
Nom de la méthode d'origine : removeOrgAdmin
Cette méthode POST supprime un utilisateur en tant que Org Admin du code chaîne. Cette méthode ne peut être appelée que par Token Admin ou Org Admin de l'organisation indiquée.
Charge utile:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "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
    }
}
removeFIAuditor
Nom de la méthode d'origine : removeOrgAuditor
Cette méthode POST supprime un utilisateur en tant que Org Auditor du code chaîne. Cette méthode ne peut être appelée que par Token Admin ou Org Admin de l'organisation indiquée.
Charge utile:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "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
Nom de la méthode d'origine : removeRole
Cette méthode supprime un rôle d'un utilisateur et d'un jeton spécifiés. Cette méthode peut être appelée uniquement par Token Admin du code chaîne ou par Org Admin de l'organisation indiquée.
Charge utile:
{
    "tokenId": "{{bc-token-id}}",
    "role": "role value (for example minter / burner / notary)",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Paramètres :
  • tokenId: string : ID du jeton.
  • role: string : nom du rôle à enlever de l'utilisateur spécifié. Les comportements mintable et burnable correspondent aux propriétés minter_role_name et burner_role_name du fichier de spécification. De même, le rôle notary correspond à la propriété notary_role_name du fichier de spécification.
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • endorsers: string[] : tableau des homologues (par exemple, peer1, peer2) qui doit approuver la transaction.
Renvoie :
  • En cas de succès, message avec les détails du compte.
Exemple de valeur renvoyée :
{
    "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
    }
}
requestCBDCCreation
Nom de la méthode d'origine : requestMint
Cette méthode peut être appelée par un minter pour envoyer une demande au notaire minter afin de créer une quantité spécifiée de jetons.
Charge utile:
{
    "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
}
Paramètres :
  • tokenId: string : ID du jeton à frapper.
  • operationId: string : ID d'opération unique qui représente la demande menthe.
  • notaryOrgId: string – ID du fournisseur de services d'adhésion (MSP) du notaire mineur qui traitera la demande.
  • notaryUserId: string : nom d'utilisateur ou ID courriel du notaire mineur qui traitera la demande.
  • quantity: number – La quantité de jetons à la menthe.
  • timeToExpiration : délai après lequel la demande de frappe expire et n'est plus valide.
  • infoDetails: JSON : objet indiquant la catégorie (category) et la description (description) de la demande, comme indiqué dans l'exemple suivant.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "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
    }
}
requestCBDCRetirement
Nom de la méthode d'origine : requestBurn
Cette méthode peut être appelée par un brûleur pour envoyer une demande au notaire de détruire une quantité spécifiée de jetons.
Charge utile:
{
    "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
}
Paramètres :
  • tokenId: string : ID du jeton à graver.
  • operationId: string : ID d'opération unique qui représente la demande de gravure.
  • notaryOrgId: string – ID du fournisseur de services d'adhésion (MSP) du notaire du brûleur qui traitera la demande.
  • notaryUserId: string : nom d'utilisateur ou ID courriel du notaire du brûleur qui traitera la demande.
  • quantity: number : quantité de jetons à brûler.
  • timeToExpiration : délai après lequel la demande de gravure expire et n'est plus valide.
  • infoDetails: JSON : objet indiquant la catégorie (category) et la description (description) de la demande, comme indiqué dans l'exemple suivant.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • sameOrgEndorser: boolean : valeur booléenne qui indique si les approbations de transaction doivent provenir de la même organisation que le demandeur.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "0adb57ca9776c8760468c40465e0f0d37472f0b4b32fd02561ef28b3f7b28cf1",
        "payload": {
            "msg": "AccountId oaccount~0d7b3f73aea28065017ce8b79c0bb19256dc0cb475a0b2a85192bd110f69535c (Org-Id: CB , User-Id: retirer_user_cb) has successfully submitted request to burn 10 tokens"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20010",
        "blockNumber": 206
    }
}
setApplicationGroups
Nom de la méthode d'origine : setApplicationGroups
Cette méthode POST est utilisée pour définir le paramètre application_groups dans les détails de compte pour les groupes d'applications spécifiés. Cette méthode peut être appelée uniquement par Token Admin du code chaîne ou par Org Admin de l'organisation indiquée.
Charge utile:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "tokenId": "{{bc-token-id}}",
    "applicationGroups": "[\"application_groups value\"]",
    "endorsers": {{endorsers}}
}
Paramètres :
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • tokenId: string : ID du jeton.
  • applicationGroups: string[] : liste des groupes d'applications auxquels l'ID utilisateur appartient, définissant les associations de l'utilisateur dans l'application CBDC.
  • endorsers: string[] : tableau des homologues (par exemple, peer1, peer2) qui doit approuver la transaction.
Renvoie :
  • En cas de succès, message de succès indiquant la quantité de jetons consommés et l'ID de compte.
Exemple de valeur renvoyée :
{
    "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,
            "application_groups": [
                "System_Admins"
            ],
            "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
    }
}
setMaxDailyAmount
Nom de la méthode d'origine : setMaxDailyAmount
Cette méthode POST est utilisée pour définir le paramètre maxDailyAmount dans les détails du compte pour le montant spécifié. Cette méthode peut être appelée uniquement par Token Admin du code chaîne ou par Org Admin de l'organisation indiquée.
Charge utile:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "tokenId": "{{bc-token-id}}",
    "maxDailyAmount": 1,
    "endorsers": {{endorsers}}
}
Paramètres :
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • tokenId: string : ID du jeton.
  • maxDailyAmount: number – Valeur du montant journalier maximum pour le compte spécifié, qui définit le montant maximum pouvant être traité quotidiennement.
  • endorsers: string[] : tableau des homologues (par exemple, peer1, peer2) qui doit approuver la transaction.
Exemple de valeur renvoyée :
{
    "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,
            "application_groups": [
                "System_Admins"
            ],
            "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
Nom de la méthode d'origine : setMaxDailyTransactionCount
Cette méthode POST est utilisée pour définir le paramètre maxDailyTransactions dans les détails du compte pour le montant spécifié. Cette méthode peut être appelée uniquement par Token Admin du code chaîne ou par Org Admin de l'organisation indiquée.
Charge utile:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "tokenId": "{{bc-token-id}}",
    "maxDailyTransactions": 1,
    "endorsers": {{endorsers}}
}
Paramètres :
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • tokenId: string : ID du jeton.
  • maxDailyTransactions: number – Valeur du montant journalier maximum pour le compte spécifié, qui définit le nombre maximum de transactions autorisées par jour.
  • endorsers: string[] : tableau des homologues (par exemple, peer1, peer2) qui doit approuver la transaction.
Exemple de valeur renvoyée :
{
    "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,
            "application_groups": [
                "System_Admins"
            ],
            "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
    }
}
suspendCBDCAccount
Nom de la méthode d'origine : suspendAccount
Cette méthode suspend un compte de jeton fongible. Il génère une erreur si aucune valeur accountStatus n'est trouvée dans le livre. Cette méthode peut être appelée uniquement par Token Admin du code chaîne ou par Org Admin de l'organisation indiquée.
Charge utile:
{
    "tokenId": "{{bc-token-id}}",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Paramètres :
  • tokenId: string : ID du jeton.
  • orgId: string : ID du fournisseur de services d'adhésion de l'utilisateur dans l'organisation actuelle.
  • userId: string : nom d'utilisateur ou adresse électronique de l'utilisateur.
  • endorsers: string[] : tableau des homologues (par exemple, peer1, peer2) qui doit approuver la transaction.
Exemple de valeur renvoyée :
{
    "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
    }
}
transferCBDCTokens
Nom de la méthode d'origine : transferTokens
Cette méthode transfère les jetons de l'appelant vers un compte spécifié. L'appelant de la méthode doit avoir un compte. La quantité doit être comprise dans les valeurs décimales indiquées par le paramètre decimal du comportement divisible dans le fichier de spécification.
Charge utile:
{
    "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}}
}
Paramètres :
  • tokenId: string : ID du jeton.
  • toOrgId: string – ID du fournisseur de services d'adhésion du bénéficiaire (bénéficiaire) dans l'organisation actuelle.
  • toUserId: string : nom d'utilisateur ou ID courriel du destinataire.
  • quantity: number : nombre de jetons à transférer.
  • infoDetails: JSON : objet indiquant la catégorie (category) et la description (description) de la demande, comme indiqué dans l'exemple suivant.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • endorsers: string[] : tableau des homologues (par exemple, peer1, peer2) qui doit approuver la transaction.
Exemple de valeur renvoyée :
{
    "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
    }
}

Le package d'API de wrapper inclut également l'API createCBDCAccount, qui combine les API de code chaîne et les API de console Oracle Blockchain Platform dans une seule adresse pour la création de comptes.

createCBDCAccount
Charge utile:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "applicationGroups": "[\"applicationGroups value\"]",
    "tokenId": "{{bc-token-id}}",
    "role": "role value (for example minter / burner / notary / tokenAdmin / tokenAuditor / orgAdmin / orgAuditor)",
    "dailyLimits": "{\"max_daily_amount\":1000, \"max_daily_transactions\":100}"
}
Paramètres de charge utile :
  • orgId : ID du fournisseur de services d'adhésion de l'utilisateur pour lequel créer le compte. L'ID doit commencer par un caractère alphanumérique et peut inclure des lettres, des chiffres et des caractères spéciaux tels que des traits de soulignement (_), des points (.), des signes arobase (@) et des tirets (-).
  • userId : nom d'utilisateur ou adresse électronique de l'utilisateur. L'ID doit commencer par un caractère alphanumérique et peut inclure des lettres, des chiffres et des caractères spéciaux tels que des traits de soulignement (_), des points (.), des signes arobase (@) et des tirets (-).
  • applicationGroups : groupes d'applications auxquels le compte appartiendra. Par exemple, System_Admins.
  • tokenId : ID du jeton associé au compte. L'ID doit commencer par un caractère alphanumérique et peut inclure des lettres, des chiffres et les caractères spéciaux suivants : trait de soulignement (_) et trait d'union (-). Sa longueur ne peut pas dépasser 16 caractères.
  • role : le rôle doit être l'une des valeurs suivantes : minter, burner, notary, tokenAdmin, tokenAuditor, orgAdmin ou orgAuditor.
  • dailyLimits – Deux champs numériques qui définissent les limites de transaction quotidienne : max_daily_amount et max_daily_transactions.
Exemple de valeur renvoyée :
"payload": {
 "msg": "Account created successfully and 'minter' role added to Account Id: oaccount~4a86f2843c2b0105c97a77202bd9aba519c81dcef27eccc1d89125ae32770700 (Org-Id: CB, User-Id: creator_user_cb)"
 "accountDetails":
      {           
            "bapAccountVersion": 0,
            "assetType": "oaccount",
            "account_id": "oaccount~ce5c56d2068ce31b82136c8eea110a80b9251595d361db70924c4e989032a1be",
            "user_id": "creator_user_cb",
            "org_id": "CB",
            "token_type": "fungible",
            "token_id": "USD",
            "token_name": "",
            "balance": 0,
            "onhold_balance": 0,
            "onhold_burn_balance": 0,
            "application_groups": [
                "System_Creators"
            ],
            "max_daily_amount": 1000,
            "daily_amount": 0,
            "max_daily_transactions": 100,
            "daily_transactions": 0,
            "current_date": "2024-10-06T00:00:00.000Z"
     }
 }

L'API createCBDCAccount effectue les opérations suivantes dans l'ordre.

  1. Crée un ID d'inscription pour l'utilisateur dans Oracle Blockchain Platform. Le code d'inscription créé est identique au code utilisateur, avec certaines limites. L'ID ne doit contenir que des caractères alphanumériques, des tirets (-) et des soulignements (_). Si l'ID utilisateur contient d'autres caractères spéciaux, ils sont remplacés par des traits de soulignement (_). Par exemple, si l'ID utilisateur est adam.fripp@example.com, l'ID d'inscription créé est adam_fripp_example_com. Si l'inscription existe déjà pour le code utilisateur indiqué, aucune autre inscription n'est créée.
  2. Crée un compte dans le livre avec les détails fournis dans la charge utile.
  3. Associe le nouveau compte au jeton spécifié dans la charge utile.
  4. Affecte le rôle indiqué dans la charge utile à l'utilisateur.

Pour assurer la cohérence et éviter les données incomplètes, en cas d'échec de l'une des étapes suivantes, l'ID d'inscription créé lors de la première étape est supprimé.