Vente en gros CBDC Wrapper API Package

Oracle Blockchain Platform Digital Assets Edition comprend un ensemble d'API wrapper qui étend l'API REST afin de prendre en charge des opérations propres à CBDC de gros.

L'ensemble d'API wrapper utilise le service de passerelle d'API et le service des fonctions pour OCI, qui sont créés à l'aide d'une pile du gestionnaire de ressources sur Oracle Cloud Infrastructure (OCI), pour déployer des routes d'API spécialement conçues pour l'application CBDC de gros. L'ensemble d'API d'encapsulation CBDC de gros peut être téléchargé à partir de la console Oracle Blockchain Platform et comprend les composants suivants.
  • WholesaleCBDCWrapperAPI.zip, un fichier d'archives contenant l'ensemble d'API d'encapsuleur, y compris les scripts Terraform requis pour le déploiement. Vous déployez ce fichier dans une pile du gestionnaire de ressources sur OCI pour créer les ressources Oracle nécessaires pour les API Wrapper.
  • WholesaleCBDC_WrapperAPI.postman_collection.json, une collection Postman qui vous permet de tester les API d'encapsulation déployées. La collection comprend des demandes préconfigurées avec des points d'extrémité et des données utiles correspondant aux API définies dans le paquetage d'API wrapper.

API d'encapsulation

activateCBDCAccount
Nom de la méthode initiale : 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 spécifiée. Les comptes supprimés ne peuvent pas être activés.
Données utiles :
{
    "tokenId": "{{bc-token-id}}",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Paramètres :
  • tokenId: string - ID du jeton.
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • endorsers: string[] - Tableau des pairs (par exemple, peer1, peer2) qui doivent approuver la transaction.
Retourne :
  • En cas de succès, une 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 fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements de transaction doivent provenir de la même organisation que le demandeur.
addCBAdmin
Nom de la méthode initiale : addTokenAdmin
Cette méthode POST ajoute un utilisateur en tant que Token Admin du code de chaîne du jeton. La méthode ne peut être appelée que par Token Admin du code de chaîne du jeton. Le premier appel provient de l'administrateur qui instancie le code de chaîne.
Données utiles :
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : addTokenAuditor
Cette méthode POST ajoute des vérificateurs de jeton au code de chaîne du jeton. Cette méthode ne peut être appelée que par la chaîne Token Admin du code de chaîne.
Données utiles :
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : addOrgAdmin
Cette méthode ajoute des administrateurs d'organisation au code de chaîne du jeton. Cette méthode ne peut être appelée que par Token Admin ou Org Admin de l'organisation spécifiée.
Données utiles :
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : addOrgAuditor
Cette méthode ajoute des auditeurs d'organisation au code de chaîne du jeton. Cette méthode ne peut être appelée que par Token Admin ou Org Admin de l'organisation spécifiée.
Données utiles :
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : addRole
Cette méthode ajoute le rôle à l'utilisateur et au jeton spécifiés. Les ID compte sont formés par la création d'un hachage SHA-256 de l'ID jeton concaténé, de l'ID organisation et de l'ID utilisateur. Cette méthode ne peut être appelée que par Token Admin ou Org Admin de l'organisation spécifiée.
Données utiles :
{
    "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 fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : approveMint
Les notaires peuvent appeler cette méthode POST pour approuver une demande de menthe.
Données utiles :
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "sameOrgEndorser": true
}
Paramètres :
  • tokenId: string - ID du jeton.
  • operationId: string - ID opération unique de la demande de menthe à approuver.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : approveBurn
Les notaires peuvent appeler cette méthode POST pour approuver une demande de gravure.
Données utiles :
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "sameOrgEndorser": true
}
Paramètres :
  • tokenId: string - ID du jeton.
  • operationId: string - ID opération unique de la demande de menthe à approuver.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : executeHoldTokens
Les notaires appellent cette méthode pour approuver un blocage des jetons, ce qui déclenche le transfert des jetons du payeur au bénéficiaire dans ce scénario d'affaires. La quantité de jetons mis en attente précédemment par le responsable du jeton est maintenant transférée au destinataire. Si la valeur quantity est inférieure à la valeur de blocage réelle, le montant restant est de nouveau disponible pour le responsable du jeton. Si le comportement roles est spécifié 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 le rôle de notaire. Sinon, tout appelant avec un compte peut fonctionner comme notaire.
Données utiles :
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "quantity": 1,
    "endorsers": {{endorsers}}
}
Paramètres :
  • tokenId: string - ID du jeton.
  • operationId: string - ID opération unique de la demande de menthe à approuver.
  • quantity: number - Nombre de jetons détenus à transférer.
  • endorsers: string[] - Tableau des pairs (par exemple, peer1, peer2) qui doivent 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 initiale : associateTokenToAccount
Cette méthode POST associe un ID 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 spécifiée.
Données utiles :
{
    "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 pairs (par exemple, peer1, peer2) qui doivent 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,
            "application_groups": [
                "CBDC_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 initiale : 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 font le suivi des soldes, des soldes bloqués et de l'historique des transactions. Un ID compte est un jeu de caractères alphanumériques, précédé de oaccount~<token asset name>~ et suivi d'un hachage du nom d'utilisateur ou de l'ID courriel (userId) du responsable de l'instance ou de l'utilisateur connecté à l'instance, de l'ID fournisseur de services d'appartenance (orgId) de l'utilisateur dans l'organisation de réseau courante. Cette méthode ne peut être appelée que par un élément Token Admin du code de chaîne ou par un élément Org Admin de l'organisation spécifiée.
Données utiles :
{
    "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 fournisseur de services d'adhésion (MSP) 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 les traits de soulignement (_), les points (.), les signes (@) et les tirets (-).
  • userId - Nom d'utilisateur ou ID courriel 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 les traits de soulignement (_), les points (.), les signes (@) et les 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 - Un objet JSON du type suivant.
    {
         "max_daily_amount": 100000
         "max_daily_transactions": 10000
     }
    Dans l'exemple, la valeur max_daily_amount est le nombre maximal 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 pairs (par exemple, peer1, peer2) qui doivent 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,
            "application_groups": [
                "CBDC_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 initiale : getAllActiveAccounts
Cette méthode GET retourne tous les comptes actifs associés à l'ID jeton spécifié.
Interrogation :
/getAllActiveCBDCAccounts?tokenId={{bc-token-id}}
Paramètres :
  • tokenId: string - ID du jeton.
Retourne :
  • En cas de succès, un message comprenant les détails de l'utilisateur. La sortie varie en fonction du rôle de l'utilisateur, comme illustré dans les exemples suivants.
Exemple de valeur de retour (administrateur de jeton, vérificateur 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,
                    "application_groups": [
                        "CBDC_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 de retour (administrateur de l'organisation, vérificateur 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 initiale : getAllSuspendedAccounts
Cette méthode GET retourne tous les comptes suspendus associés à l'ID jeton spécifié.
Interrogation :
/getAllSuspendedCBDCAccounts?tokenId={{bc-token-id}}
Paramètres :
  • tokenId: string - ID du jeton.
Retourne :
  • En cas de succès, un message comprenant les détails de l'utilisateur. La sortie varie en fonction du rôle de l'utilisateur, comme illustré dans les exemples suivants.
Exemple de valeur de retour (administrateur de jeton, vérificateur 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,
                    "application_groups": [
                        "FI_CBDC_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 de retour (administrateur de l'organisation, vérificateur 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 initiale : 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 Token Admin, Token Auditor, Org Admin, Org Auditor ou le notaire.
Interrogation :
/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 initiale : getAccount
Cette méthode GET retourne les détails du compte pour un utilisateur et un jeton spécifiés. Cette méthode ne peut être appelée que par Token Admin ou Token Auditor du code de chaîne, par Org Admin ou Org Auditor de l'organisation spécifiée, ou par AccountOwner du compte.
Interrogation :
/getCBDCAccount?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&userId={{bc-user-id}}
Paramètres :
  • tokenId: string - ID du jeton.
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel 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,
            "application_groups": [
                "CBDC_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 initiale : getAccountBalance
Cette méthode GET retourne le solde courant pour un compte et un jeton spécifiés. Cette méthode ne peut être appelée que par Token Admin ou Token Auditor du code de chaîne, par Org Admin ou Org Auditor de l'organisation spécifié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 fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel 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 initiale : getAccountsByUser
Cette méthode retourne une liste de tous les ID compte pour un ID organisation et un ID utilisateur spécifiés. Cette méthode ne peut être appelée que par Token Admin ou Token Auditor du code de chaîne, par Org Admin ou Org Auditor de l'organisation spécifiée, ou par AccountOwner du compte.
/getCBDCAccountsByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
Paramètres :
  • orgId string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId string - Nom d'utilisateur ou ID courriel 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,
                "application_groups": [
                    "CBDC_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,
                "application_groups": [
                    "CBDC_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,
                "application_groups": [
                    "CBDC_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 initiale : getAccountTransactionHistory
Cette méthode retourne un tableau des détails de l'historique des transactions de compte pour un utilisateur et un jeton spécifiés. Cette méthode ne peut être appelée que par Token Admin ou Token Auditor du code de chaîne, par Org Admin ou Org Auditor de l'organisation spécifié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 fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel 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 initiale : getAccountTransactionHistoryWithFiltersFromRichHistDB
Cette méthode retourne les détails de l'historique des transactions de compte à partir de la base de données de l'historique riche. Cette méthode ne peut être appelée que par Token Admin ou Token Auditor du code de chaîne, par Org Admin ou Org Auditor de l'organisation spécifié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 fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • customEndpoint - Point d'extrémité du service RESTful de la base de données d'historique enrichi à partir duquel extraire l'historique des transactions.
  • bearerToken - Jeton à utiliser pour appeler le point d'extrémité RESTful pour s'assurer que la demande est autorisée.
  • filters: JSON object - Paramètre facultatif. Si vide, tous les enregistrements sont retournés. La propriété pageSize détermine le nombre d'enregistrements à retourner. Si pageSize a la valeur 0, la taille de page par défaut est 20. La propriété bookmark détermine l'index de départ des enregistrements à retourner. 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 initiale : getBurnQuantity
Cette méthode GET retourne la quantité totale de jetons brûlés pour une organisation spécifiée. Cette méthode ne peut être appelée que par un utilisateur Token Admin, Token Auditor ou 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 initiale : getNetTokens
Cette méthode GET retourne le nombre net total de jetons disponibles dans le système pour un jeton spécifié. Le total net des jetons est la quantité de jetons restants après la combustion des jetons. Cette méthode ne peut être appelée que par Token Admin ou Token Auditor du code de 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 initiale : getOnHoldIds
Cette méthode GET retourne une liste de tous les ID blocage pour un compte spécifié. Cette méthode ne peut être appelée que par Token Admin ou Token Auditor du code de chaîne, par Org Admin ou Org Auditor de l'organisation spécifié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 fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel 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 initiale : 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 ne peut être appelée que par Token Admin ou Token Auditor du code de 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 initiale : getPendingRequest
Cette méthode extrait toutes les demandes en attente d'un type spécifié où l'appelant est affecté en tant qu'approbateur. Cette méthode ne peut être appelée que par Token Admin ou Token Auditor du code de 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 initiale : getTotalBalanceByCallerOrgId
Cette méthode extrait le solde total de l'organisation de l'appelant. Cette méthode ne peut être appelée que par Token Admin, Token Auditor, Org Admin, Org Auditor ou tout responsable 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 initiale : getTotalMintedTokens
Cette méthode retourne le nombre total de jetons frappés pour un jeton spécifié. Cette méthode ne peut être appelée que par Token Admin, Token Auditor, Org Admin ou Org Auditor.
Interrogation :
/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 initiale : getTransactionWithBlockNumber
Cette méthode GET retourne les détails de la transaction pour l'ID transaction spécifié.
Interrogation :
/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 initiale : getUserByAccountId
Cette méthode retourne les détails de l'utilisateur (orgId, userId et tokenId) pour un compte spécifié. Cette méthode ne peut être appelée que par Token Admin ou Token Auditor du code de chaîne, ou par Org Admin ou Org Auditor de l'organisation spécifiée.
Interrogation :
/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 initiale : getUsersByRole
Cette méthode GET retourne une 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 de chaîne.
Interrogation :
/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 initiale : holdTokens
Cette méthode crée un blocage pour le compte du responsable des jetons avec le compte to_account_id. Un compte de notaire est spécifié, qui est responsable de terminer ou de débloquer le blocage. Lorsque le blocage est créé, le solde de jeton spécifié du payeur est bloqué. Un solde bloqué ne peut pas être transféré tant que le blocage n'est pas terminé ou annulé. Un compte doit déjà être créé pour l'appelant de cette méthode.
Données utiles :
{
    "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 identifiant l'opération de blocage. En général, cet ID est transmis par l'application client.
  • toOrgId: string - ID fournisseur de services d'adhésion (MSP) du destinataire dans l'organisation courante.
  • toUserId: string - Nom d'utilisateur ou ID courriel du destinataire.
  • notaryOrgId: string - ID fournisseur de services d'adhésion (MSP) du notaire dans l'organisation courante.
  • notaryUserId: string - Nom d'utilisateur ou ID courriel du notaire.
  • quantity: number - Nombre de jetons à mettre en attente.
  • timeToExpiration - Heure à laquelle le blocage 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 illustrées dans l'exemple suivant.
    {
       "category" : "category input",
       "description" : "description input"
    }
  • endorsers: string[] - Tableau des pairs (par exemple, peer1, peer2) qui doivent 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 initiale : init
Cette méthode est appelée lorsque le code de chaîne est déployé. Les informations sur l'utilisateur sont enregistrées en tant que Token Admin du code de chaîne.
Données utiles :
{
    "adminList": "[{\"org_id\":\"{{bc-org-id}}\",\"user_id\":\"{{bc-admin-user}}\"}]"
}
Paramètres :
  • adminList array - Tableau d'informations {user_id, org_id} qui spécifie la liste des administrateurs de jetons. 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 initiale : 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 de chaîne.
Données utiles :
{
    "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 indiquant si les endossements de transaction doivent provenir de la même organisation que le demandeur.
Retourne :
  • En cas de réussite, une 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 initiale : rejectMint
Cette méthode peut être appelée par un notaire mineur pour rejeter une demande de frappe.
Données utiles :
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "sameOrgEndorser": true
}
Paramètres :
  • tokenId: string - ID du jeton pour rejeter la frappe.
  • operationId: string - ID opération unique qui représente la demande de menthe.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : rejectBurn
Cette méthode peut être appelée par un notaire pour rejeter une demande de gravure.
Données utiles :
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "sameOrgEndorser": true
}
Paramètres :
  • tokenId: string - ID du jeton à rejeter pour la gravure.
  • operationId: string - ID opération unique qui représente la demande de gravure.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : 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.
Données utiles :
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "endorsers": {{endorsers}}
}
Paramètres :
  • tokenId: string - ID du jeton.
  • operationId: string - ID unique identifiant l'opération de blocage. En général, cet ID est transmis par l'application client.
  • endorsers: string[] - Tableau des pairs (par exemple, peer1, peer2) qui doivent 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 initiale : removeTokenAdmin
Cette méthode POST supprime un utilisateur en tant que Token Admin du code de chaîne. Cette méthode ne peut être appelée que par un élément Token Admin du code de chaîne. Un administrateur ne peut pas se supprimer lui-même.
Données utiles :
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : removeTokenAuditor
Cette méthode POST supprime un utilisateur en tant que Token Auditor du code de chaîne. Cette méthode ne peut être appelée que par un élément Token Admin du code de chaîne.
Données utiles :
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : removeOrgAdmin
Cette méthode POST supprime un utilisateur en tant que Org Admin du code de chaîne. Cette méthode ne peut être appelée que par Token Admin ou Org Admin de l'organisation spécifiée.
Données utiles :
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : removeOrgAuditor
Cette méthode POST supprime un utilisateur en tant que Org Auditor du code de chaîne. Cette méthode ne peut être appelée que par Token Admin ou Org Admin de l'organisation spécifiée.
Données utiles :
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Paramètres :
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : removeRole
Cette méthode supprime un rôle d'un utilisateur et d'un jeton spécifiés. Cette méthode ne peut être appelée que par un élément Token Admin du code de chaîne ou par un élément Org Admin de l'organisation spécifiée.
Données utiles :
{
    "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 à supprimer 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 fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • endorsers: string[] - Tableau des pairs (par exemple, peer1, peer2) qui doivent approuver la transaction.
Retourne :
  • En cas de réussite, un 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 initiale : requestMint
Cette méthode peut être appelée par un minter pour envoyer une demande au notaire du minter pour créer une quantité spécifiée de jetons.
Données utiles :
{
    "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 à extraire.
  • operationId: string - ID opération unique qui représente la demande de menthe.
  • notaryOrgId: string - ID du fournisseur de services d'adhésion (MSP) du notaire qui traitera la demande.
  • notaryUserId: string - Nom d'utilisateur ou ID courriel du notaire qui traitera la demande.
  • quantity: number - Quantité de jetons à menthe.
  • timeToExpiration - Heure après laquelle la demande de frappe expire et n'est plus valide.
  • infoDetails: JSON - Objet spécifiant la catégorie (category) et la description (description) de la demande, comme illustré dans l'exemple suivant.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : 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.
Données utiles :
{
    "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 opération unique qui représente la demande de gravure.
  • notaryOrgId: string - ID 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 - Heure après laquelle la demande de gravure expire et n'est plus valide.
  • infoDetails: JSON - Objet spécifiant la catégorie (category) et la description (description) de la demande, comme illustré dans l'exemple suivant.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • sameOrgEndorser: boolean - Valeur booléenne indiquant si les endossements 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 initiale : setApplicationGroups
Cette méthode POST est utilisée pour définir le paramètre application_groups dans les détails du compte pour les groupes d'applications spécifiés. Cette méthode ne peut être appelée que par un élément Token Admin du code de chaîne ou par un élément Org Admin de l'organisation spécifiée.
Données utiles :
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "tokenId": "{{bc-token-id}}",
    "applicationGroups": "[\"application_groups value\"]",
    "endorsers": {{endorsers}}
}
Paramètres :
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • tokenId: string - ID du jeton.
  • applicationGroups: string[] - Liste des groupes d'applications auxquels appartient l'ID utilisateur, définissant les associations de l'utilisateur dans l'application CBDC.
  • endorsers: string[] - Tableau des pairs (par exemple, peer1, peer2) qui doivent approuver la transaction.
Retourne :
  • En cas de succès, un message de réussite avec la quantité de jetons brûlés et l'ID 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,
            "application_groups": [
                "CBDC_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 initiale : 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 ne peut être appelée que par un élément Token Admin du code de chaîne ou par un élément Org Admin de l'organisation spécifiée.
Données utiles :
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "tokenId": "{{bc-token-id}}",
    "maxDailyAmount": 1,
    "endorsers": {{endorsers}}
}
Paramètres :
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • tokenId: string - ID du jeton.
  • maxDailyAmount: number - Valeur du montant quotidien maximal pour le compte spécifié, qui définit le montant maximal pouvant être transigé quotidiennement.
  • endorsers: string[] - Tableau des pairs (par exemple, peer1, peer2) qui doivent 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,
            "application_groups": [
                "CBDC_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 initiale : 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 ne peut être appelée que par un élément Token Admin du code de chaîne ou par un élément Org Admin de l'organisation spécifiée.
Données utiles :
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "tokenId": "{{bc-token-id}}",
    "maxDailyTransactions": 1,
    "endorsers": {{endorsers}}
}
Paramètres :
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • tokenId: string - ID du jeton.
  • maxDailyTransactions: number - Valeur du montant quotidien maximal pour le compte spécifié, qui définit le nombre maximal de transactions autorisées par jour.
  • endorsers: string[] - Tableau des pairs (par exemple, peer1, peer2) qui doivent 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,
            "application_groups": [
                "CBDC_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 initiale : suspendAccount
Cette méthode suspend un compte de jeton fongible. Une erreur est générée si aucune valeur accountStatus n'est trouvée dans le livre. Cette méthode ne peut être appelée que par un élément Token Admin du code de chaîne ou par un élément Org Admin de l'organisation spécifiée.
Données utiles :
{
    "tokenId": "{{bc-token-id}}",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Paramètres :
  • tokenId: string - ID du jeton.
  • orgId: string - ID fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation courante.
  • userId: string - Nom d'utilisateur ou ID courriel de l'utilisateur.
  • endorsers: string[] - Tableau des pairs (par exemple, peer1, peer2) qui doivent 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 initiale : 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 spécifiées par le paramètre decimal du comportement divisible dans le fichier de spécification.
Données utiles :
{
    "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 fournisseur de services d'adhésion (MSP) du destinataire (bénéficiaire) dans l'organisation courante.
  • toUserId: string - Nom d'utilisateur ou ID courriel du destinataire.
  • quantity: number - Nombre de jetons à transférer.
  • infoDetails: JSON - Objet spécifiant la catégorie (category) et la description (description) de la demande, comme illustré dans l'exemple suivant.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • endorsers: string[] - Tableau des pairs (par exemple, peer1, peer2) qui doivent 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
    }
}

L'ensemble d'API wrapper comprend également l'API createCBDCAccount, qui combine des API de code de chaîne et des API de la console Oracle Blockchain Platform en un seul point d'extrémité pour la création de compte.

createCBDCAccount
Données utiles :
{
    "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 données utiles :
  • orgId - ID fournisseur de services d'adhésion (MSP) 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 les traits de soulignement (_), les points (.), les signes (@) et les tirets (-).
  • userId - Nom d'utilisateur ou ID courriel 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 les traits de soulignement (_), les points (.), les signes (@) et les tirets (-).
  • applicationGroups - Groupes d'applications auxquels le compte appartiendra. Par exemple, CBDC_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, le trait de soulignement (_) et le tiret (-). Il 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 quotidiennes : 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,
            "application_groups": [
                "CBDC_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 inscription pour l'utilisateur dans Oracle Blockchain Platform. Le code d'inscription créé est le même que celui de l'utilisateur, avec certaines restrictions. L'ID ne peut contenir que des caractères alphanumériques, des tirets (-) et des traits de soulignement (_). Si l'ID utilisateur contient d'autres caractères spéciaux, ils sont remplacés par un trait de soulignement (_). Par exemple, si l'ID utilisateur est adam.fripp@example.com, l'ID inscription créé est adam_fripp_example_com. Si l'inscription existe déjà pour l'utilisateur indiqué, aucune autre inscription n'est créée.
  2. Crée un compte dans le livre avec les détails fournis dans les données utiles.
  3. Associe le nouveau compte au jeton spécifié dans les données utiles.
  4. Affecte le rôle spécifié dans les données utiles à l'utilisateur.

Afin d'assurer la cohérence et d'éviter des données incomplètes, si l'une des étapes suivantes échoue, le code d'inscription créé à la première étape est supprimé.