Pacote Confidencial Atacado CBDC Wrapper API

O Oracle Blockchain Platform Digital Assets Edition inclui um pacote de API wrapper que estende a API REST para oferecer suporte a operações específicas da versão de modo confidencial do cenário CBDC de atacado.

O pacote de API wrapper usa o serviço API Gateway e o OCI Functions, que são criados usando uma pilha do Resource Manager na Oracle Cloud Infrastructure (OCI), para implantar rotas de API projetadas especificamente para o aplicativo CBDC de atacado. O pacote de API de wrapper CBDC de atacado pode ser baixado na console do Oracle Blockchain Platform e inclui os componentes a seguir.
  • WholesaleCBDCWithConfidentialPaymentWrapperAPI.zip, um arquivo compactado que contém o pacote de API wrapper, incluindo os scripts Terraform necessários para implantação. Você implanta esse arquivo em uma pilha do Resource Manager no OCI para criar os recursos necessários da Oracle para as APIs do encapsulador.
  • WholesaleCBDCWithConfidentialPayment_WrapperAPI.postman_collection, uma coleção Postman que permite testar as APIs do wrapper implantadas. A coleta inclui solicitações pré-configuradas com pontos finais e payloads que correspondem às APIs definidas no pacote de API do wrapper.

APIs do Encapsulador

activateCBDCAccount
Nome do método original: activateAccount
Este método POST ativa uma conta de token. Esse método só pode ser chamado por uma Token Admin ou Org Admin da organização especificada. Não é possível ativar contas excluídas.
Payload:
{
    "accountId": "account_id value",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • accountId: string – O ID da conta.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Retorna:
  • Em caso de sucesso, uma representação JSON do objeto de status da conta do token especificado.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "864cdbc5b4ee1a6f2238301e75ee2ddff0ecfa490ddf490da33365cae92cb4ad",
        "payload": {
            "assetType": "oaccountStatus",
            "status_id": "oaccountStatus~4c900b07f6136f36854064c0c0ba97aa09c9734cbe11966cc83865f156ced2c6",
            "account_id": "oaccount~214ad54a30703412b195f36429607b08627dea893303870bf3372f944fe0c088",
            "status": "active"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 58
    }
}
addCBAdmin
Nome do método original: addTokenAdmin
Esse método POST adiciona um usuário como Token Admin do código de cadeia do token. O método só pode ser chamado por um Token Admin do chaincode do token. A primeira chamada é do administrador que instancia o chaincode.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • orgId: string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • userId: string – O nome de usuário ou ID de e-mail do usuário.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "a988dc3e9aab162508fd0555fec254f248e27fd0c5440d94e1f49fc65643cafa",
        "payload": {
            "msg": "Successfully added Token Admin (Org_Id: CentralBank, User_Id: user1)"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 69
    }
}
addCBAuditor
Nome do método original: addTokenAuditor
Este método POST adiciona auditores de token ao chaincode de token. Esse método só pode ser chamado pelo Token Admin do chaincode.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • orgId: string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • userId: string – O nome de usuário ou ID de e-mail do usuário.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "864cdbc5b4ee1a6f2238301e75ee2ddff0ecfa490ddf490da33365cae92cb4ad",
        "payload": {
            "assetType": "oaccountStatus",
            "status_id": "oaccountStatus~4c900b07f6136f36854064c0c0ba97aa09c9734cbe11966cc83865f156ced2c6",
            "account_id": "oaccount~214ad54a30703412b195f36429607b08627dea893303870bf3372f944fe0c088",
            "status": "active"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 58
    }
}
addFIAdmin
Nome do método original: addOrgAdmin
Este método adiciona administradores da organização ao chaincode do token. Esse método só pode ser chamado por uma Token Admin ou Org Admin da organização especificada.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • orgId: string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • userId: string – O nome de usuário ou ID de e-mail do usuário.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "ab1544c0d23d930253e6e6020c7c9584f03d324fb1123cc96fe7e0573b232792",
        "payload": {
            "msg": "Successfully added Org Admin (Org_Id: CentralBank, User_Id: cb_admin_demo)"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 61
    }
}
addFIAuditor
Nome do método original: addOrgAuditor
Este método adiciona auditores da organização ao chaincode do token. Esse método só pode ser chamado por uma Token Admin ou Org Admin da organização especificada.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • orgId: string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • userId: string – O nome de usuário ou ID de e-mail do usuário.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "c0acbadfa461963a5d085bb12335dcf6d8ec566acf72a88a1f168b3a0435db89",
        "payload": {
            "msg": "Successfully added Org Auditor (Org_Id: CentralBank, User_Id: cb_admin_demo)"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 62
    }
}
addRole
Nome do método original: addRole
Este método adiciona a atribuição ao usuário e token especificados. Os IDs da conta são formados pela criação de um hash SHA-256 do ID do token concatenado, ID da organização e ID do usuário. Esse método só pode ser chamado por uma Token Admin ou Org Admin da organização especificada.
Payload:
{
    "accountId": "account_id value",
    "role": "role value (for example minter / burner / notary)",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • accountId: string – O ID da conta.
  • role: string – O nome da função a ser adicionada ao usuário especificado.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "c44931d2227305914db21564301775f8a4edc2aa7fef434d063be7e207b4fd20",
        "payload": {
            "msg": "Successfully added role 'minter' to Account Id: oaccount~214ad54a30703412b195f36429607b08627dea893303870bf3372f944fe0c088"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20009",
        "blockNumber": 63
    }
}
approveCBDCCreation
Nome do método original: approveMint
Notários podem chamar este método POST para aprovar uma solicitação de hortelã.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • tokenId: string – O ID do token.
  • operationId: string – O ID de operação exclusivo da solicitação de mint a ser aprovada.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "4514aa229ebcc4d2fedcaa47c4301615e30c4a9bae45cf0256a5b80d75b3697a",
        "payload": {
            "msg": "Successfully minted 1000 tokens to Account Id: oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20011",
        "blockNumber": 337
    }
}
approveCBDCRetirement
Nome do método original: approveBurn
Os notários podem chamar esse método POST para aprovar uma solicitação de gravação.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • tokenId: string – O ID do token.
  • operationId: string – O ID de operação exclusivo da solicitação de mint a ser aprovada.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "8c7b013765917ebade60c6e6e122ec9b94282349e630fa1f2a446c79cb9ef29c",
        "payload": {
            "msg": "Successfully burned 200 tokens from account id: oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98 (Org-Id: CentralBank, User-Id: cb_retirer_demo)"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20011",
        "blockNumber": 338
    }
}
approveHoldCBDCTokens
Nome do método original: executeHoldTokens
Os notários chamam esse método para aprovar uma retenção de tokens, o que aciona a transferência dos tokens do pagador para o beneficiário nesse cenário de negócios. A quantidade de tokens colocados em espera anteriormente pelo proprietário do token agora é transferida para o destinatário. Se o valor quantity for menor que o valor de retenção real, o valor restante será disponibilizado novamente para o proprietário do token. Se o comportamento roles for especificado na seção behaviors do modelo de token e o valor notary_role_name for definido, a conta do chamador deverá ter a atribuição de notário. Caso contrário, qualquer chamador com uma conta pode funcionar como um notário.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "quantity": 1,
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • tokenId: string – O ID do token.
  • operationId: string – O ID de operação exclusivo da solicitação de mint a ser aprovada.
  • quantity: number – O número de tokens retidos a serem transferidos.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "5177f7560d32838242a26ac74f2a90c6ff9b47aae0d0988f28d9b4cf7e27c097",
        "payload": {
            "msg": "Account Id: oaccount~1e31495a0c149b08cb9d02bdcac5e83d88c0f1557d954dda12bb807d7f6fc111 (Org-Id: Org1, User-Id: fi1_org_user1_demo) is successfully executed '10' tokens from Operation Id '454f4bf6'."
        },
        "encode": "JSON",
        "sourceURL": "org1-oabcs1-nrt.blockchain.ocp.example.com:20009",
        "blockNumber": 339
    }
}
consolidateRunningBalanceInTransactions
Nome do método original: consolidateRunningBalanceInTransactions
Este método consolida os saldos de execução das contas na organização do chamador. Esse método só pode ser chamado por uma Token Admin ou Org Admin.
Payload:
{
    "endorsers": {{endorsers}}
}
Parâmetros:
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "f3c019974cd93eaa8f3171a36ec25009fa6925b5880cae8c9a49a141944039c0",
        "payload": {
            "msg": "Successfully updated account running balance for pending transactions."
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20009",
        "blockNumber": 340
    }
}        
associateTokenToAccount
Nome do método original: associateTokenToAccount
Este método POST associa um ID de conta especificado a um token especificado. Esse método só pode ser chamado por uma Token Admin ou Org Admin da organização especificada.
Payload:
{
    "accountId": "account_id value",
    "tokenId": "{{bc-token-id}}",
    "customAccountId": "custom_account_id value",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • accountId: string – O ID da conta.
  • tokenId: string – O ID do token.
  • customAccountId: string – O ID aleatório exclusivo de contas no modo confidencial.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "fc7e9297d1d7beef5567fbef873955f5a9759d031811198e24f67f064e0e80b0",
        "payload": {
            "bapAccountVersion": 0,
            "assetType": "oaccount",
            "account_id": "oaccount~b53cb2c19c92d1d5c8cb9f6e988e7761c34e03e014e6c4b889565fc0abf46c8a",
            "org_id": "CentralBank",
            "token_type": "fungible",
            "token_id": "USD",
            "token_name": "cbdc",
            "balance": "028b72742c8aa9a0395c828fe4f0e46226a3e40d4e731d0b994c8028c8b7bd4df6",
            "onhold_balance": "028b72742c8aa9a0395c828fe4f0e46226a3e40d4e731d0b994c8028c8b7bd4df6",
            "onhold_burn_balance": "028b72742c8aa9a0395c828fe4f0e46226a3e40d4e731d0b994c8028c8b7bd4df6",
            "application_groups": [
                "CENTRAL_BANK_USERS"
            ]
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20009",
        "blockNumber": 71
    }
}
createAccount
Nome do método original: createAccount
Este método cria uma conta para um usuário e token especificados. É necessário criar uma conta para qualquer usuário que tenha tokens a qualquer momento. As contas rastreiam saldos, saldos em retenção e histórico de transações. Um ID de conta é um conjunto alfanumérico de caracteres, prefixado com oaccount~<token asset name>~ e seguido por um hash do nome do usuário ou do ID de e-mail (userId) do proprietário da instância ou do usuário que está conectado à instância, o ID do provedor de serviços de associação (orgId) do usuário na organização de rede atual. Esse método só pode ser chamado por uma Token Admin do chaincode ou por uma Org Admin da organização especificada.
Payload:
{
    "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}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • orgId – O ID do provedor de serviços de associação (MSP) do usuário para o qual a conta será criada. O ID deve começar com um caractere alfanumérico e pode incluir letras, números e caracteres especiais, como sublinhados (_), pontos (.), sinais (@) e hifens (-).
  • userId – O nome de usuário ou ID de e-mail do usuário. O ID deve começar com um caractere alfanumérico e pode incluir letras, números e caracteres especiais, como sublinhados (_), pontos (.), sinais (@) e hifens (-).
  • tokenType: TokenType – O tipo de token, que deve ser fungible.
  • applicationGroups: string[] – Uma lista de grupos de aplicativos aos quais o ID do usuário pertence, que definem as associações do usuário no aplicativo CBDC.
  • dailyLimits: JSON object – Um objeto JSON do tipo a seguir.
    {
         "max_daily_amount": 100000
         "max_daily_transactions": 10000
     }
    No exemplo, o valor max_daily_amount é a quantidade máxima de tokens que podem ser transacionados diariamente e o valor max_daily_transactions é o número máximo de transações que podem ser concluídas diariamente.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "dc167f95bdcc246c9ecb20e56126c705f522cff30c94798f21a82de111367ab8",
        "payload": {
            "bapAccountVersion": 0,
            "assetType": "oaccount",
            "account_id": "oaccount~b53cb2c19c92d1d5c8cb9f6e988e7761c34e03e014e6c4b889565fc0abf46c8a",
            "org_id": "CentralBank",
            "token_type": "fungible",
            "token_id": "",
            "token_name": "",
            "balance": "028b72742c8aa9a0395c828fe4f0e46226a3e40d4e731d0b994c8028c8b7bd4df6",
            "onhold_balance": "028b72742c8aa9a0395c828fe4f0e46226a3e40d4e731d0b994c8028c8b7bd4df6",
            "onhold_burn_balance": "028b72742c8aa9a0395c828fe4f0e46226a3e40d4e731d0b994c8028c8b7bd4df6",
            "application_groups": [
                "CENTRAL_BANK_USERS"
            ]
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 70
    }
}
getAccountDetailsByCustomAccountId
Nome do método original: getAccountDetailsByCustomAccountId
Este método GET retorna os detalhes da conta para um ID de conta personalizado especificado. Esse método pode ser chamado por um Token Admin ou Token Auditor, ou um Org Admin ou Org Auditor da organização especificada.
Consulta:
getAccountDetailsByCustomAccountId?customAccountId=customAccountId value&orgId={{bc-org-id}}&peer={{peer}}
Parâmetros:
  • customAccountId: string – O ID aleatório exclusivo de contas no modo confidencial.
  • orgId: string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "cf46211c670f7d21feb000a0161baaced91be314ea53981e26dc1482924055c9",
        "payload": [
            {
                "bapAccountVersion": 0,
                "assetType": "oaccount",
                "account_id": "oaccount~c44ffac4c46718e9744cb0aae2016d26a87a5bef5e2d1c0d1abc7d8782f0ba61",
                "org_id": "CentralBank",
                "token_type": "fungible",
                "token_id": "USD",
                "token_name": "cbdc",
                "balance": "0",
                "onhold_balance": "0",
                "onhold_burn_balance": "0",
                "application_groups": [
                    "SYSTEM_ADMINS"
                ],
                "user_id": "cb_admin_demo",
                "custom_account_id": "10101234000123"
            }
        ],
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20012",
        "blockNumber": 341
    }
}
getAllActiveCBDCAccounts
Nome do método original: getAllActiveAccounts
Este método GET retorna todas as contas ativas associadas ao ID do token especificado.
Consulta:
getAllActiveCBDCAccounts?orgId={{bc-org-id}}&tokenId={{bc-token-id}}&peer={{peer}}
Parâmetros:
  • tokenId: string – O ID do token.
  • orgId: string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Retorna:
  • Em caso de sucesso, uma mensagem que inclui detalhes do usuário. A saída varia de acordo com a função do usuário, conforme mostrado nos exemplos a seguir.
Exemplo de Valor de Retorno (Administrador de Token, Auditor de Token, Administrador de Organização, Auditor de Organização):
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "key": "oaccount~c44ffac4c46718e9744cb0aae2016d26a87a5bef5e2d1c0d1abc7d8782f0ba61",
                "role_name": null,
                "valueJson": {
                    "account_id": "oaccount~c44ffac4c46718e9744cb0aae2016d26a87a5bef5e2d1c0d1abc7d8782f0ba61",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_ADMINS"
                    ],
                    "max_daily_amount": "10000",
                    "max_daily_transactions": "1000"
                },
                "non_account_role_name": [
                    "token_admin"
                ]
            },
            {
                "key": "oaccount~1a6ea9aaa59c9ae8385bfdc870bf02616995c881ffeb111f526c8b31dbbdd43c",
                "role_name": null,
                "valueJson": {
                    "account_id": "oaccount~1a6ea9aaa59c9ae8385bfdc870bf02616995c881ffeb111f526c8b31dbbdd43c",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_AUDITORS"
                    ],
                    "max_daily_amount": "10000",
                    "max_daily_transactions": "1000"
                },
                "non_account_role_name": [
                    "token_auditor"
                ]
            },
            {
                "key": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "role_name": "minter",
                "valueJson": {
                    "account_id": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_CREATORS"
                    ],
                    "max_daily_amount": "1000000",
                    "max_daily_transactions": "100000"
                },
                "non_account_role_name": []
            },
            {
                "key": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "role_name": "notary",
                "valueJson": {
                    "account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_MANAGERS"
                    ],
                    "max_daily_amount": "10000",
                    "max_daily_transactions": "1000"
                },
                "non_account_role_name": []
            },
            {
                "key": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "role_name": null,
                "valueJson": {
                    "account_id": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_ISSUERS"
                    ],
                    "max_daily_amount": "100000",
                    "max_daily_transactions": "10000"
                },
                "non_account_role_name": []
            },
            {
                "key": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                "role_name": "burner",
                "valueJson": {
                    "account_id": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_RETIRERS"
                    ],
                    "max_daily_amount": "10000",
                    "max_daily_transactions": "1000"
                },
                "non_account_role_name": []
            }
        ],
        "encode": "JSON"
    }
}
Exemplo de Valor de Retorno (todos os outros usuários):
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "key": "oaccount~c44ffac4c46718e9744cb0aae2016d26a87a5bef5e2d1c0d1abc7d8782f0ba61",
                "role_name": null,
                "valueJson": {
                    "account_id": "oaccount~c44ffac4c46718e9744cb0aae2016d26a87a5bef5e2d1c0d1abc7d8782f0ba61",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_ADMINS"
                    ]
                }
            },
            {
                "key": "oaccount~1a6ea9aaa59c9ae8385bfdc870bf02616995c881ffeb111f526c8b31dbbdd43c",
                "role_name": null,
                "valueJson": {
                    "account_id": "oaccount~1a6ea9aaa59c9ae8385bfdc870bf02616995c881ffeb111f526c8b31dbbdd43c",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_AUDITORS"
                    ]
                }
            },
            {
                "key": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "role_name": "minter",
                "valueJson": {
                    "account_id": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_CREATORS"
                    ]
                }
            },
            {
                "key": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "role_name": "notary",
                "valueJson": {
                    "account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_MANAGERS"
                    ]
                }
            },
            {
                "key": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "role_name": null,
                "valueJson": {
                    "account_id": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_ISSUERS"
                    ]
                }
            },
            {
                "key": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                "role_name": "burner",
                "valueJson": {
                    "account_id": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_RETIRERS"
                    ]
                }
            }
        ],
        "encode": "JSON"
    }
}
getAllSuspendedCBDCAccounts
Nome do método original: getAllSuspendedAccounts
Este método GET retorna todas as contas suspensas associadas ao ID do token especificado.
Consulta:
/getAllSuspendedCBDCAccounts?orgId={{bc-org-id}}&tokenId={{bc-token-id}}&peer={{peer}}
Parâmetros:
  • tokenId: string – O ID do token.
  • orgId: string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Retorna:
  • Em caso de sucesso, uma mensagem que inclui detalhes do usuário. A saída varia de acordo com a função do usuário, conforme mostrado nos exemplos a seguir.
Exemplo de Valor de Retorno (Administrador de Token, Auditor de Token, Administrador de Organização, Auditor de Organização):
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "key": "oaccount~c44ffac4c46718e9744cb0aae2016d26a87a5bef5e2d1c0d1abc7d8782f0ba61",
                "role_name": null,
                "valueJson": {
                    "account_id": "oaccount~c44ffac4c46718e9744cb0aae2016d26a87a5bef5e2d1c0d1abc7d8782f0ba61",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_ADMINS"
                    ],
                    "max_daily_amount": "10000",
                    "max_daily_transactions": "1000"
                },
                "non_account_role_name": [
                    "token_admin"
                ]
            }
        ],
        "encode": "JSON"
    }
}
Exemplo de Valor de Retorno (todos os outros usuários):
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "key": "oaccount~c44ffac4c46718e9744cb0aae2016d26a87a5bef5e2d1c0d1abc7d8782f0ba61",
                "role_name": null,
                "valueJson": {
                    "account_id": "oaccount~c44ffac4c46718e9744cb0aae2016d26a87a5bef5e2d1c0d1abc7d8782f0ba61",
                    "org_id": "CentralBank",
                    "token_id": "USD",
                    "application_groups": [
                        "SYSTEM_ADMINS"
                    ]
                }
            }
        ],
        "encode": "JSON"
    }
}
getApproverActionHistory
Nome do método original: getActionHistory
Este método GET recupera o histórico de aprovações ou rejeições feitas pelo chamador para operações de hortelã, queima e transferência (emissão), incluindo detalhes da organização e IDs de usuário das contas envolvidas (remetente, destinatário e notário). Esse método só pode ser chamado por um Token Admin, Token Auditor, Org Admin, Org Auditor ou pelo notário.
Consulta:
getApproverActionHistory?tokenId={{bc-token-id}}&peer={{peer}}
Parâmetros:
  • tokenId: string – O ID do token.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "from_account_id": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                "from_org_id": "CentralBank",
                "holding_id": "ohold~cbdc~USD~b770",
                "holding_status": "APPROVE_BURN",
                "last_updated_time": "2025-08-25T13:21:24.000Z",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": null,
                "timetoexpiration": null,
                "to_account_id": null,
                "to_org_id": null,
                "token_name": null,
                "quantity": 200
            },
            {
                "from_account_id": null,
                "from_org_id": null,
                "holding_id": "ohold~cbdc~USD~e7b6",
                "holding_status": "APPROVE_MINT",
                "last_updated_time": "2025-08-25T13:20:50.000Z",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": null,
                "timetoexpiration": null,
                "to_account_id": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "to_org_id": "CentralBank",
                "token_name": null,
                "quantity": 1000
            },
            {
                "from_account_id": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "holding_id": "ohold~cbdc~USD~81d7c4ac",
                "holding_status": "EXECUTEHOLD",
                "last_updated_time": "2025-08-25T13:16:55.000Z",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": null,
                "timetoexpiration": null,
                "to_account_id": "oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3",
                "to_org_id": "Org1",
                "token_name": null,
                "quantity": 200
            },
            {
                "from_account_id": null,
                "from_org_id": null,
                "holding_id": "ohold~cbdc~USD~1e19",
                "holding_status": "APPROVE_MINT",
                "last_updated_time": "2025-08-13T06:12:41.000Z",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": null,
                "timetoexpiration": null,
                "to_account_id": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "to_org_id": "CentralBank",
                "token_name": null,
                "quantity": 10000
            },
            {
                "from_account_id": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                "from_org_id": "CentralBank",
                "holding_id": "ohold~cbdc~USD~1f74",
                "holding_status": "REJECT_BURN",
                "last_updated_time": "2025-08-12T21:09:53.000Z",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": null,
                "timetoexpiration": null,
                "to_account_id": "",
                "to_org_id": null,
                "token_name": null,
                "quantity": 1000
            },
            {
                "from_account_id": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                "from_org_id": "CentralBank",
                "holding_id": "ohold~cbdc~USD~d67c",
                "holding_status": "REJECT_BURN",
                "last_updated_time": "2025-08-12T21:09:47.000Z",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": null,
                "timetoexpiration": null,
                "to_account_id": "",
                "to_org_id": null,
                "token_name": null,
                "quantity": 2000
            },
            {
                "from_account_id": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                "from_org_id": "CentralBank",
                "holding_id": "ohold~cbdc~USD~911b",
                "holding_status": "APPROVE_BURN",
                "last_updated_time": "2025-08-12T21:09:40.000Z",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": null,
                "timetoexpiration": null,
                "to_account_id": null,
                "to_org_id": null,
                "token_name": null,
                "quantity": 1000
            },
            {
                "from_account_id": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "holding_id": "ohold~cbdc~USD~ed815e20",
                "holding_status": "EXECUTEHOLD",
                "last_updated_time": "2025-08-12T21:09:25.000Z",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": null,
                "timetoexpiration": null,
                "to_account_id": "oaccount~3954f54a8bc7acdd0c3d0960104240f60d56c26c8a179430267359cd80ce3709",
                "to_org_id": "org2",
                "token_name": null,
                "quantity": 10000
            },
            {
                "from_account_id": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "holding_id": "ohold~cbdc~USD~12d87129",
                "holding_status": "EXECUTEHOLD",
                "last_updated_time": "2025-08-12T21:09:17.000Z",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": null,
                "timetoexpiration": null,
                "to_account_id": "oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3",
                "to_org_id": "Org1",
                "token_name": null,
                "quantity": 10000
            },
            {
                "from_account_id": "",
                "from_org_id": null,
                "holding_id": "ohold~cbdc~USD~54a4",
                "holding_status": "REJECT_MINT",
                "last_updated_time": "2025-08-12T21:01:27.000Z",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": null,
                "timetoexpiration": null,
                "to_account_id": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "to_org_id": "CentralBank",
                "token_name": null,
                "quantity": 40000
            },
            {
                "from_account_id": null,
                "from_org_id": null,
                "holding_id": "ohold~cbdc~USD~9b27",
                "holding_status": "APPROVE_MINT",
                "last_updated_time": "2025-08-12T21:01:16.000Z",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": null,
                "timetoexpiration": null,
                "to_account_id": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "to_org_id": "CentralBank",
                "token_name": null,
                "quantity": 30000
            },
            {
                "from_account_id": null,
                "from_org_id": null,
                "holding_id": "ohold~cbdc~USD~eda0",
                "holding_status": "APPROVE_MINT",
                "last_updated_time": "2025-08-12T21:01:05.000Z",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": null,
                "timetoexpiration": null,
                "to_account_id": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "to_org_id": "CentralBank",
                "token_name": null,
                "quantity": 20000
            },
            {
                "from_account_id": null,
                "from_org_id": null,
                "holding_id": "ohold~cbdc~USD~1baa",
                "holding_status": "APPROVE_MINT",
                "last_updated_time": "2025-08-12T21:01:03.000Z",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": null,
                "timetoexpiration": null,
                "to_account_id": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "to_org_id": "CentralBank",
                "token_name": null,
                "quantity": 10000
            }
        ],
        "encode": "JSON"
    }
}
getCBDCAccount
Nome do método original: getCBDCAccount
Este método GET retorna detalhes da conta para um usuário e token especificados. Esse método só pode ser chamado por uma Token Admin ou Token Auditor do chaincode, uma Org Admin ou Org Auditor da organização especificada ou a AccountOwner da conta.
Consulta:
/getCBDCAccount?accountId=account_id value&peer={{peer}}
Parâmetros:
  • accountId: string – O ID da conta.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "bapAccountVersion": 0,
            "assetType": "oaccount",
            "user_id": "cb_manager_demo",
            "custom_account_id": "10105678007891",
            "status": "active",
            "account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
            "org_id": "CentralBank",
            "token_type": "fungible",
            "token_id": "USD",
            "token_name": "cbdc",
            "balance": "0",
            "onhold_balance": "0",
            "onhold_burn_balance": "0",
            "application_groups": [
                "SYSTEM_MANAGERS"
            ]
        },
        "encode": "JSON"
    }
}
getCBDCAccountBalance
Nome do método original: getAccountBalance
Este método GET retorna o saldo atual de uma conta e token especificados. Esse método só pode ser chamado por uma Token Admin ou Token Auditor do chaincode, uma Org Admin ou Org Auditor da organização especificada ou a AccountOwner da conta.
/getCBDCAccountBalance?accountId=account_id value&peer={{peer}}
Parâmetros:
  • accountId: string – O ID da conta.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "msg": "Current Balance is: 100",
            "user_balance": 100
        },
        "encode": "JSON"
    }
}
getCBDCAccountsByUser
Nome do método original: getAccountsByUser
Este método retorna uma lista de todos os IDs de conta para um ID organização e ID usuário especificados. Esse método só pode ser chamado por uma Token Admin ou Token Auditor do chaincode, uma Org Admin ou Org Auditor da organização especificada ou a AccountOwner da conta.
/getCBDCAccountsByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}&peer={{peer}}
Parâmetros:
  • orgId string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • userId string – O nome de usuário ou ID de e-mail do usuário.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "bapAccountVersion": 15,
                "assetType": "oaccount",
                "user_id": "cb__creator_demo",
                "custom_account_id": "10105678004567",
                "account_id": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "org_id": "CentralBank",
                "token_type": "fungible",
                "token_id": "USD",
                "token_name": "cbdc",
                "balance": "21000",
                "onhold_balance": "0",
                "onhold_burn_balance": "0",
                "application_groups": [
                    "SYSTEM_CREATORS"
                ]
            },
            {
                "bapAccountVersion": 0,
                "assetType": "oaccount",
                "user_id": "cb__creator_demo",
                "custom_account_id": "Not Available",
                "account_id": "oaccount~388fb87df59c6a4fbf0400c58b61aa85f975a8c4209942006b0c0d6334fcf887",
                "org_id": "CentralBank",
                "token_type": "fungible",
                "token_id": "",
                "token_name": "",
                "balance": "0",
                "onhold_balance": "0",
                "onhold_burn_balance": "0",
                "application_groups": [
                    "application_groups value"
                ]
            }
        ],
        "encode": "JSON"
    }
}
getCBDCAccountTransactionHistory
Nome do método original: getAccountTransactionHistory
Este método retorna um array de detalhes do histórico de transações da conta para um usuário e token especificados. Esse método só pode ser chamado por uma Token Admin ou Token Auditor do chaincode, uma Org Admin ou Org Auditor da organização especificada ou a AccountOwner da conta.
/getCBDCAccountTransactionHistory?accountId=account_id value&peer={{peer}}
Parâmetros:
  • accountId: string – O ID da conta.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "transaction_id": "otransaction~4514aa229ebcc4d2fedcaa47c4301615e30c4a9bae45cf0256a5b80d75b3697a",
                "transacted_amount": 1000,
                "timestamp": "2025-08-25T13:20:50.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "APPROVE_MINT",
                "balance": 21000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~1982f73495060e0eef4d78282a91c41e27e8c95572739b0677a1e404a0d20aa9",
                "transacted_amount": 200,
                "timestamp": "2025-08-25T13:12:43.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "REQUEST_MINT",
                "balance": 20000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~fedd714cf1509f7517819d7cd4c0921d0b2f5d1ff6a25dcb08ab411defd6b5f3",
                "transacted_amount": 2000,
                "timestamp": "2025-08-21T05:23:25.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "REQUEST_MINT",
                "balance": 20000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~f33b47234f3ee0b636962c8c31c01d06523b789ca16b3b342d5080b71268bcc3",
                "transacted_amount": 1000,
                "timestamp": "2025-08-21T05:23:07.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "REQUEST_MINT",
                "balance": 20000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~cf934527149bc24f62a8ddeeea7f74a19a0f84d8f161535a771be49d2520d5b3",
                "transacted_amount": 10000,
                "timestamp": "2025-08-13T06:12:41.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "APPROVE_MINT",
                "balance": 20000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~f5c0e11ca61d9adc843658929e6de2a738ad586304f9e020f75bf4aac5e42a2c",
                "transacted_amount": 10000,
                "timestamp": "2025-08-13T06:12:04.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "REQUEST_MINT",
                "balance": 10000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~862aa9d9e877d3ea209b87299ab5b12c13ed5ce43d1cf1b934043c1dd02f58f6",
                "transacted_amount": 50000,
                "timestamp": "2025-08-12T21:04:22.000Z",
                "token_id": "USD",
                "category": "transfer",
                "transacted_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "transaction_type": "DEBIT",
                "balance": 10000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~8a74c6d87ca74a613aab9db5d40386f8d5b534f9800503af8ca27e8946d7616d",
                "transacted_amount": 40000,
                "timestamp": "2025-08-12T21:01:27.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "REJECT_MINT",
                "balance": 60000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~28ac66ba33f7ad0648448964b2b74525c9e3f0c9908c7a0484690b9baa56c2db",
                "transacted_amount": 30000,
                "timestamp": "2025-08-12T21:01:16.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "APPROVE_MINT",
                "balance": 60000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~7e32ad8f365ff59814e112f27602f30ab599fb9c1638784496c66a61a6277c22",
                "transacted_amount": 20000,
                "timestamp": "2025-08-12T21:01:05.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "APPROVE_MINT",
                "balance": 30000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~1477050bb9e55f4f471872b31fce0d2097f5d5e57d89a842070df5e36d7ab0da",
                "transacted_amount": 10000,
                "timestamp": "2025-08-12T21:01:03.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "APPROVE_MINT",
                "balance": 10000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~0e76c6931b7ee134e967e847d9730b867a0fd191d39697d83d36dd15745c02e3",
                "transacted_amount": 40000,
                "timestamp": "2025-08-12T21:00:20.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "REQUEST_MINT",
                "balance": 0,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~07bbf9c190694371626da59ded5d87434d26f612891e13bb15bdd28f6086e760",
                "transacted_amount": 30000,
                "timestamp": "2025-08-12T21:00:01.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "REQUEST_MINT",
                "balance": 0,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~8721175c6cbbce17b6c4bb6a444e475d07f52352dfd0d990679f342215153513",
                "transacted_amount": 20000,
                "timestamp": "2025-08-12T20:59:41.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "REQUEST_MINT",
                "balance": 0,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~dc24c24d43a6525e807a39edcf8c6a2b6ccb81f0d755958f509509687eacee84",
                "transacted_amount": 10000,
                "timestamp": "2025-08-12T20:59:13.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "REQUEST_MINT",
                "balance": 0,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~396e6ca5a11a9609632d0864026409d46a708fb95e3e21b39fa5f3fb78f90872",
                "transacted_amount": 0,
                "timestamp": "2025-08-12T20:43:20.000Z",
                "token_id": "",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transaction_type": "CREATE_ACCOUNT",
                "balance": 0,
                "onhold_balance": 0
            }
        ],
        "encode": "JSON"
    }
}
getCBDCAccountTransactionHistoryWithFilters
Nome do método original: getAccountTransactionHistoryWithFiltersFromRichHistDB
Este método retorna os detalhes do histórico de transações da conta do banco de dados do histórico avançado. Esse método só pode ser chamado por uma Token Admin ou Token Auditor do chaincode, uma Org Admin ou Org Auditor da organização especificada ou a AccountOwner da conta.
/getCBDCAccountTransactionHistoryWithFilters?accountId=account_id value&customEndpoint=custom_endpoint value&bearerToken=bearer_token value&filters={"pageSize":20,"bookmark":"","startTime":"1900-01-01T00:00:00+00:00","endTime":"2100-01-01T00:00:00+00:00"}&peer={{peer}}
Parâmetros:
  • accountId: string – O ID da conta.
  • customEndpoint – O ponto final do serviço RESTful do banco de dados de histórico avançado do qual extrair o histórico de transações.
  • bearerToken – O token a ser usado para chamar o ponto final RESTful para garantir que a solicitação seja autorizada.
  • filters: JSON object – Um parâmetro opcional. Se estiver vazio, todos os registros serão retornados. A propriedade pageSize determina o número de registros a serem retornados. Se pageSize for 0, o tamanho padrão da página será 20. A propriedade bookmark determina o índice inicial dos registros a serem retornados. As propriedades startTime e endTime devem ser especificadas no formato RFC-3339.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "transaction_id": "otransaction~3140569a4ecb3c3f141cc2468fe21276640b7fd79013d951d9104b79072d8f9c",
                "transacted_amount": 200,
                "timestamp": "2025-08-25T13:16:55.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3",
                "transacted_org_id": "Org1",
                "transacted_user_id": "fi1_org_officer_demo",
                "transacted_custom_account_id": "20200222221111",
                "to_account": "oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3",
                "to_org_id": "Org1",
                "to_user_id": "fi1_org_officer_demo",
                "to_custom_account_id": "20200222221111",
                "from_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "from_user_id": "cb_issuer_demo",
                "from_custom_account_id": "10109999001234",
                "transaction_type": "EXECUTEHOLD",
                "category": "transfer",
                "balance": 26800,
                "onhold_balance": 300
            },
            {
                "transaction_id": "otransaction~2b75b3e8531a651f07c2d048d8546ad70ac49c66f0b82ed7626c1739090842ce",
                "transacted_amount": 100,
                "timestamp": "2025-08-25T13:16:06.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "transacted_org_id": "CentralBank",
                "transacted_user_id": "cb_issuer_demo",
                "transacted_custom_account_id": "10109999001234",
                "to_account": "oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3",
                "to_org_id": "Org1",
                "to_user_id": "fi1_org_officer_demo",
                "to_custom_account_id": "20200222221111",
                "from_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "from_user_id": "cb_issuer_demo",
                "from_custom_account_id": "10109999001234",
                "transaction_type": "ONHOLD",
                "holding_id": "ohold~cbdc~USD~e26f11da",
                "category": "transfer",
                "balance": 26800,
                "onhold_balance": 500
            },
            {
                "transaction_id": "otransaction~9e7bf14cf96c5f90170da9455b1318687785e936192f60b7cbeb1c8bfabc41d2",
                "transacted_amount": 100,
                "timestamp": "2025-08-21T06:57:19.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                "transacted_org_id": "CentralBank",
                "transacted_user_id": "cb_retirer_demo",
                "transacted_custom_account_id": "10109999006543",
                "to_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "to_org_id": "CentralBank",
                "to_user_id": "cb_issuer_demo",
                "to_custom_account_id": "10109999001234",
                "from_account": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                "from_org_id": "CentralBank",
                "from_user_id": "cb_retirer_demo",
                "from_custom_account_id": "10109999006543",
                "transaction_type": "CREDIT",
                "category": "transfer",
                "balance": 26900,
                "onhold_balance": 400
            },
            {
                "transaction_id": "otransaction~b3901b4754920a9c75e36069dc55024ad505e4c127f334eedf65ef6703dc6b86",
                "transacted_amount": 200,
                "timestamp": "2025-08-21T05:39:25.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "transacted_org_id": "CentralBank",
                "transacted_user_id": "cb_issuer_demo",
                "transacted_custom_account_id": "10109999001234",
                "to_account": "oaccount~3954f54a8bc7acdd0c3d0960104240f60d56c26c8a179430267359cd80ce3709",
                "to_org_id": "org2",
                "to_user_id": "fi2_org_officer_demo",
                "to_custom_account_id": "30300617202404",
                "from_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "from_user_id": "cb_issuer_demo",
                "from_custom_account_id": "10109999001234",
                "transaction_type": "ONHOLD",
                "holding_id": "ohold~cbdc~USD~77b75873",
                "category": "issuance",
                "balance": 26800,
                "onhold_balance": 400
            },
            {
                "transaction_id": "otransaction~d55c9dfc9feacb353544b5d8b2ae694162ade3890bcaaf715503fd1d6a73cd1a",
                "transacted_amount": 200,
                "timestamp": "2025-08-21T05:39:01.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "transacted_org_id": "CentralBank",
                "transacted_user_id": "cb_issuer_demo",
                "transacted_custom_account_id": "10109999001234",
                "to_account": "oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3",
                "to_org_id": "Org1",
                "to_user_id": "fi1_org_officer_demo",
                "to_custom_account_id": "20200222221111",
                "from_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "from_user_id": "cb_issuer_demo",
                "from_custom_account_id": "10109999001234",
                "transaction_type": "ONHOLD",
                "holding_id": "ohold~cbdc~USD~81d7c4ac",
                "category": "transfer",
                "balance": 27000,
                "onhold_balance": 200
            },
            {
                "transaction_id": "otransaction~751eaedbe4311edd5d17cae53d283caf397d0cb09f18d57a5e3fe61266875ff9",
                "transacted_amount": 200,
                "timestamp": "2025-08-13T09:59:22.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~3954f54a8bc7acdd0c3d0960104240f60d56c26c8a179430267359cd80ce3709",
                "transacted_org_id": "org2",
                "transacted_user_id": "fi2_org_officer_demo",
                "transacted_custom_account_id": "30300617202404",
                "to_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "to_org_id": "CentralBank",
                "to_user_id": "cb_issuer_demo",
                "to_custom_account_id": "10109999001234",
                "from_account": "oaccount~3954f54a8bc7acdd0c3d0960104240f60d56c26c8a179430267359cd80ce3709",
                "from_org_id": "org2",
                "from_user_id": "fi2_org_officer_demo",
                "from_custom_account_id": "30300617202404",
                "transaction_type": "CREDIT",
                "category": "transfer",
                "balance": 27200,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~70155a8f4e388cc9395dbd03bedaf5a878705f5ad02302c8e9163218a5c3875a",
                "transacted_amount": 1000,
                "timestamp": "2025-08-13T06:22:56.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3",
                "transacted_org_id": "Org1",
                "transacted_user_id": "fi1_org_officer_demo",
                "transacted_custom_account_id": "20200222221111",
                "to_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "to_org_id": "CentralBank",
                "to_user_id": "cb_issuer_demo",
                "to_custom_account_id": "10109999001234",
                "from_account": "oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3",
                "from_org_id": "Org1",
                "from_user_id": "fi1_org_officer_demo",
                "from_custom_account_id": "20200222221111",
                "transaction_type": "CREDIT",
                "category": "transfer",
                "balance": 27000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~e595f3f0cc03fa5f58a546b8abbfaf155592e492f850581db2b8fed9a529c9e2",
                "transacted_amount": 10000,
                "timestamp": "2025-08-12T21:09:25.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~3954f54a8bc7acdd0c3d0960104240f60d56c26c8a179430267359cd80ce3709",
                "transacted_org_id": "org2",
                "transacted_user_id": "fi2_org_officer_demo",
                "transacted_custom_account_id": "30300617202404",
                "to_account": "oaccount~3954f54a8bc7acdd0c3d0960104240f60d56c26c8a179430267359cd80ce3709",
                "to_org_id": "org2",
                "to_user_id": "fi2_org_officer_demo",
                "to_custom_account_id": "30300617202404",
                "from_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "from_user_id": "cb_issuer_demo",
                "from_custom_account_id": "10109999001234",
                "transaction_type": "EXECUTEHOLD",
                "category": "issuance",
                "balance": 26000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~da92402859d87ae3069722d8e39cb0da448e9a5f67468233ee9b1fe7a4ebeef8",
                "transacted_amount": 10000,
                "timestamp": "2025-08-12T21:09:17.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3",
                "transacted_org_id": "Org1",
                "transacted_user_id": "fi1_org_officer_demo",
                "transacted_custom_account_id": "20200222221111",
                "to_account": "oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3",
                "to_org_id": "Org1",
                "to_user_id": "fi1_org_officer_demo",
                "to_custom_account_id": "20200222221111",
                "from_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "from_user_id": "cb_issuer_demo",
                "from_custom_account_id": "10109999001234",
                "transaction_type": "EXECUTEHOLD",
                "category": "issuance",
                "balance": 26000,
                "onhold_balance": 10000
            },
            {
                "transaction_id": "otransaction~6915145aaf09fbf4d96456febddc2aa87b48c08ddd8ff17a6bab5d310f67bb36",
                "transacted_amount": 1000,
                "timestamp": "2025-08-12T21:07:11.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                "transacted_org_id": "CentralBank",
                "transacted_user_id": "cb_retirer_demo",
                "transacted_custom_account_id": "10109999006543",
                "to_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "to_org_id": "CentralBank",
                "to_user_id": "cb_issuer_demo",
                "to_custom_account_id": "10109999001234",
                "from_account": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                "from_org_id": "CentralBank",
                "from_user_id": "cb_retirer_demo",
                "from_custom_account_id": "10109999006543",
                "transaction_type": "CREDIT",
                "category": "transfer",
                "balance": 26000,
                "onhold_balance": 20000
            },
            {
                "transaction_id": "otransaction~244d7172d1dc90a142e1f22204c76614c7eea814b3d61f33016b786f1b347784",
                "transacted_amount": 10000,
                "timestamp": "2025-08-12T21:05:39.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "transacted_org_id": "CentralBank",
                "transacted_user_id": "cb_issuer_demo",
                "transacted_custom_account_id": "10109999001234",
                "to_account": "oaccount~3954f54a8bc7acdd0c3d0960104240f60d56c26c8a179430267359cd80ce3709",
                "to_org_id": "org2",
                "to_user_id": "fi2_org_officer_demo",
                "to_custom_account_id": "30300617202404",
                "from_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "from_user_id": "cb_issuer_demo",
                "from_custom_account_id": "10109999001234",
                "transaction_type": "ONHOLD",
                "holding_id": "ohold~cbdc~USD~ed815e20",
                "category": "issuance",
                "balance": 25000,
                "onhold_balance": 20000
            },
            {
                "transaction_id": "otransaction~c63ec37966264493bde6fa666527b9cca11695c15611c32e89af49a2246f13f6",
                "transacted_amount": 10000,
                "timestamp": "2025-08-12T21:05:20.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "transacted_org_id": "CentralBank",
                "transacted_user_id": "cb_issuer_demo",
                "transacted_custom_account_id": "10109999001234",
                "to_account": "oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3",
                "to_org_id": "Org1",
                "to_user_id": "fi1_org_officer_demo",
                "to_custom_account_id": "20200222221111",
                "from_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "from_user_id": "cb_issuer_demo",
                "from_custom_account_id": "10109999001234",
                "transaction_type": "ONHOLD",
                "holding_id": "ohold~cbdc~USD~12d87129",
                "category": "issuance",
                "balance": 35000,
                "onhold_balance": 10000
            },
            {
                "transaction_id": "otransaction~5112f576c94c2d23c342479bfa37e34612414b3258a64b43cf51b920f4ff5868",
                "transacted_amount": 5000,
                "timestamp": "2025-08-12T21:05:02.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                "transacted_org_id": "CentralBank",
                "transacted_user_id": "cb_retirer_demo",
                "transacted_custom_account_id": "10109999006543",
                "to_account": "oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98",
                "to_org_id": "CentralBank",
                "to_user_id": "cb_retirer_demo",
                "to_custom_account_id": "10109999006543",
                "from_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "from_user_id": "cb_issuer_demo",
                "from_custom_account_id": "10109999001234",
                "transaction_type": "DEBIT",
                "category": "burn",
                "balance": 45000,
                "onhold_balance": 0
            },
            {
                "transaction_id": "otransaction~862aa9d9e877d3ea209b87299ab5b12c13ed5ce43d1cf1b934043c1dd02f58f6",
                "transacted_amount": 50000,
                "timestamp": "2025-08-12T21:04:22.000Z",
                "token_id": "USD",
                "transacted_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "transacted_org_id": "CentralBank",
                "transacted_user_id": "cb__creator_demo",
                "transacted_custom_account_id": "10105678004567",
                "to_account": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "to_org_id": "CentralBank",
                "to_user_id": "cb_issuer_demo",
                "to_custom_account_id": "10109999001234",
                "from_account": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                "from_org_id": "CentralBank",
                "from_user_id": "cb__creator_demo",
                "from_custom_account_id": "10105678004567",
                "transaction_type": "CREDIT",
                "category": "transfer",
                "balance": 50000,
                "onhold_balance": 0
            }
        ],
        "encode": "JSON"
    }
}
getCBDCRetiredQuantity
Nome do método original: getBurnQuantity
Este método GET retorna a quantidade total de tokens gravados para uma organização especificada. Esse método só pode ser chamado por um Token Admin, Token Auditor ou por um usuário com a função de gravador.
/getCBDCRetiredQuantity?tokenId={{bc-token-id}}&peer={{peer}}
Parâmetros:
  • tokenId: string – O ID do token.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "burnt_quantity": 1200
        },
        "encode": "JSON"
    }
}
getOnHoldIds
Nome do método original: getOnHoldIds
Este método GET retorna uma lista de todos os IDs de retenção de uma conta especificada. Esse método só pode ser chamado por uma Token Admin ou Token Auditor do chaincode, uma Org Admin ou Org Auditor da organização especificada ou a AccountOwner da conta.
/getOnHoldIds?accountId=account_id value&peer={{peer}}
Parâmetros:
  • accountId: string – O ID da conta.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "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
Nome do método original: getPendingIssuance
Esse método recupera todas as transações de emissão (transferência) pendentes em que o chamador é atribuído como aprovador, incluindo detalhes da organização, e IDs de usuário das contas envolvidas (remetente, destinatário e notário). Esse método só pode ser chamado por uma Token Admin ou Token Auditor do chaincode, uma Org Admin ou Org Auditor ou a Notary.
/getPendingCBDCIssuance?tokenId={{bc-token-id}}&orgId={{bc-org-id}}&peer={{peer}}
Parâmetros:
  • tokenId: string – O ID do token.
  • orgId: string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "asset_type": "ONHOLD",
                "category": "issuance",
                "from_account_id": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "holding_id": "ohold~cbdc~USD~77b75873",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": "77b75873",
                "timetoexpiration": "0",
                "to_account_id": "oaccount~3954f54a8bc7acdd0c3d0960104240f60d56c26c8a179430267359cd80ce3709",
                "to_org_id": "org2",
                "token_id": "USD",
                "token_name": "cbdc",
                "quantity": 200
            },
            {
                "asset_type": "ONHOLD",
                "category": "transfer",
                "from_account_id": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                "from_org_id": "CentralBank",
                "holding_id": "ohold~cbdc~USD~e26f11da",
                "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                "notary_org_id": "CentralBank",
                "operation_id": "e26f11da",
                "timetoexpiration": "0",
                "to_account_id": "oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3",
                "to_org_id": "Org1",
                "token_id": "USD",
                "token_name": "cbdc",
                "quantity": 100
            }
        ],
        "encode": "JSON"
    }
}
getPendingCBDCRequest
Nome do método original: getPendingRequest
Este método recupera todas as solicitações pendentes de um tipo especificado em que o chamador é atribuído como um aprovador. Esse método só pode ser chamado por uma Token Admin ou Token Auditor do chaincode ou pela Notary.
/getPendingCBDCRequest?tokenId={{bc-token-id}}&requestType=request_type value&orgId={{bc-org-id}}&peer={{peer}}
Parâmetros:
  • tokenId: string – O ID do token.
  • requestType: string – O tipo de transação. Por exemplo, mint ou burn.
  • orgId: string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "valueJson": {
                    "assetType": "ohold",
                    "holding_id": "ohold~cbdc~USD~89ce",
                    "operation_id": "89ce",
                    "token_name": "cbdc",
                    "from_org_id": "CentralBank",
                    "operation_type": "mint",
                    "status": "pending",
                    "from_account_id": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                    "to_account_id": "",
                    "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                    "token_id": "USD",
                    "quantity": 2000,
                    "time_to_expiration": "0",
                    "description": "Minting 2000 tokens"
                }
            },
            {
                "valueJson": {
                    "assetType": "ohold",
                    "holding_id": "ohold~cbdc~USD~cf73",
                    "operation_id": "cf73",
                    "token_name": "cbdc",
                    "from_org_id": "CentralBank",
                    "operation_type": "mint",
                    "status": "pending",
                    "from_account_id": "oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41",
                    "to_account_id": "",
                    "notary_account_id": "oaccount~9b136ef4a60230846a8c14761683851a386d306b79493bc4d00433020c96cfa7",
                    "token_id": "USD",
                    "quantity": 200,
                    "time_to_expiration": "0",
                    "description": "Minting 200"
                }
            }
        ],
        "encode": "JSON"
    }
}
getTotalCBDCBalanceByCallerOrgId
Nome do método original: getTotalBalanceByCallerOrgId
Este método recupera o saldo total da organização do chamador. Esse método só pode ser chamado por um Token Admin, Token Auditor, Org Admin, Org Auditor ou qualquer proprietário de conta.
/getTotalCBDCBalanceByCallerOrgId?peer={{peer}}
Parâmetros:
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "totalBalance": 50500
        },
        "encode": "JSON"
    }
}
getTotalCreatedCBDCTokens
Nome do método original: getTotalMintedTokens
Este método retorna o número total de tokens cunhados para um token especificado. Esse método só pode ser chamado por uma Token Admin, Token Auditor, Org Admin ou Org Auditor.
Consulta:
/getTotalCreatedCBDCTokens?tokenId={{bc-token-id}}&peer={{peer}}
Parâmetros:
  • tokenId: string – O ID do token.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "msg": "Total minted token for Token Id: USD is 71000 tokens.",
            "quantity": 71000
        },
        "encode": "JSON"
    }
}
getTransactionWithBlockNumber
Nome do método original: getTransactionWithBlockNumber
Este método GET retorna os detalhes da transação para o ID da transação especificado.
Consulta:
/getTransactionWithBlockNumber?tokenId={{bc-token-id}}&transactionId=transaction_id value&peer={{peer}}
Parâmetros:
  • tokenId: string – O ID do token.
  • transactionId: string – O ID da transação.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "blockNo": 340,
                "key": "otransaction~3140569a4ecb3c3f141cc2468fe21276640b7fd79013d951d9104b79072d8f9c",
                "metadata": null,
                "txnNo": 0,
                "value": null,
                "valueJson": {
                    "assetType": "otransaction",
                    "blockNo": 336,
                    "txnNo": 1,
                    "transaction_id": "otransaction~3140569a4ecb3c3f141cc2468fe21276640b7fd79013d951d9104b79072d8f9c",
                    "token_id": "USD",
                    "from_account_id": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
                    "from_account_balance": 26800,
                    "from_account_onhold_balance": 300,
                    "to_account_id": "oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3",
                    "transaction_type": "EXECUTE_HOLD_SENDER",
                    "amount": 200,
                    "timestamp": "2025-08-25T13:16:55.000Z",
                    "number_of_sub_transactions": 0,
                    "holding_id": "ohold~cbdc~USD~81d7c4ac",
                    "sub_transaction": "false",
                    "category": "transfer",
                    "global_transaction_id": "b54d4333-f4bb-4ca4-a7b7-cc75b659d912"
                }
            }
        ],
        "encode": "JSON"
    }
}
getUserByCBDCAccountId
Nome do método original: getUserByAccountId
Esse método retorna detalhes do usuário (orgId, userId e tokenId) para uma conta especificada. Esse método só pode ser chamado por um Token Admin ou Token Auditor do chaincode, ou um Org Admin ou Org Auditor da organização especificada.
Consulta:
/getUserByCBDCAccountId?accountId=account_id value&peer={{peer}}
Parâmetros:
  • accountId: string – O ID da conta.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "token_id": "USD",
            "org_id": "CentralBank",
            "user_id": "cb_admin_demo",
            "custom_account_id": "10101234000123"
        },
        "encode": "JSON"
    }
}
getUsersByRole
Nome do método original: getUsersByRole
Este método GET retorna uma lista de todos os usuários para uma atribuição e um token especificados. Esse método só pode ser chamado por uma Token Admin ou Token Auditor do chaincode.
Consulta:
/getUsersByRole?tokenId={{bc-token-id}}&role=role value (for example minter / burner / notary)&peer={{peer}}
Parâmetros:
  • tokenId: string – O ID do token.
  • role: string – O nome da função a ser pesquisada.
  • peer: string – O nome do nó de pareamento no qual a consulta será executada.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "users": [
                {
                    "token_id": "USD",
                    "org_id": "CentralBank"
                }
            ]
        },
        "encode": "JSON"
    }
}
holdCBDCTokens
Nome do método original: holdTokens
Esse método cria uma retenção em nome do proprietário dos tokens com a conta to_account_id. Uma conta do notário é especificada, que é responsável por concluir ou liberar a retenção. Quando a retenção é criada, o saldo de token especificado do pagador é colocado em retenção. Um saldo retido não pode ser transferido até que a retenção seja concluída ou liberada. O chamador desse método deve ter uma conta já criada.
Payload:
{
    "operationId": "operation_id value",
    "toAccountId": "to_account_id value",
    "notaryAccountId": "notary_account_id value",
    "quantity": 1,
    "timeToExpiration": "time_to_expiration value",
    "infoDetails": "{\"category\":\"category value\",\"description\":\"description value\"}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • operationId: string – Um ID exclusivo para identificar a operação de retenção. Geralmente, esse ID é passado pelo aplicativo cliente.
  • toAccountId: string – O ID da conta do destinatário.
  • notaryAccountId: string – O ID da conta do notário.
  • quantity: number – O número de tokens a serem colocados em espera.
  • timeToExpiration – O horário em que a retenção expira. Especifique 0 para uma retenção permanente. Caso contrário, use o formato RFC-3339. Por exemplo, 2021-06-02T12:46:06Z.
  • infoDetails: JSON – A descrição e a categoria, conforme mostrado no exemplo a seguir.
    {
       "category" : "category input",
       "description" : "description input"
    }
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "4793f3907eefce2f9fca7ef107405b0f116efb3afbf83fa0e61fe763690c8235",
        "payload": {
            "msg": "AccountId oaccount~76687c724ddbc2d6e6664d9618b2bf1c2a9fe10f84887462447e4caba6aaaff3 is successfully holding 100 tokens"
        },
        "encode": "JSON",
        "sourceURL": "org1-oabcs1-nrt.blockchain.ocp.example.com:20012",
        "blockNumber": 343
    }
}
init
Nome do método original: init
Este método é chamado quando o chaincode é implantado. As informações do usuário são salvas como o Token Admin do chaincode.
Payload:
{
    "adminList": "[{\"org_id\":\"{{bc-org-id}}\",\"user_id\":\"{{bc-admin-user}}\"}]",
    "transientMapArgsFlag": true
}
Parâmetros:
  • adminList array – Um array de informações do {user_id, org_id} que especifica a lista de administradores de token. O array adminList é um parâmetro obrigatório.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "fdb7dc89832c8045a333823b77fa24ae628178148dc93b3550040e070d7cd807",
        "payload": "",
        "encode": "UTF-8",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 263
    }
}
initializeCBDCToken
Nome do método original: initializeCBDCToken
Esse método cria um token e inicializa as propriedades do token. O ativo e suas propriedades são salvos no banco de dados de estado. Esse método só pode ser chamado por um Token Admin do chaincode.
Payload:
{
    "tokenAsset": "{\"token_id\":\"{{bc-token-id}}\",\"token_desc\":\"USD dollar\",\"Currency_Name\":\"US currency\"}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • tokenAsset: <Token Class> – O ativo de token é passado como parâmetro para esse método. As propriedades do ativo de token são descritas no arquivo de modelo.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Retorna:
  • No caso de sucesso, uma representação JSON do ativo de token que foi criado.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "524be506f53ddf27c42db2be2d7d7ed7f8746880c3bf7990605a4b50fe62a616",
        "payload": {
            "assetType": "otoken",
            "events": true,
            "token_id": "PHP",
            "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": 0,
                "mint_approval_required": true
            },
            "burnable": {
                "burn_approval_required": true
            },
            "divisible": {
                "decimal": 2
            },
            "Currency_Name": "Currency_Name value"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20011",
        "blockNumber": 344
    }
}
rejectCBDCCreation
Nome do método original: rejectMint
Este método pode ser chamado por um notário mineiro para rejeitar uma solicitação de cunhagem.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • tokenId: string – O ID do token para rejeitar a cunhagem.
  • operationId: string – O ID de operação exclusivo que representa a solicitação de hortelã.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "182b99bb2ed753994a8c638ab9b08c3a4e73ac8159a3173a2a1f56b651d2eeac",
        "payload": {
            "msg": "Successfully rejected mint request with Operation Id '89ce' to mint 2000 tokens of token id USD"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20011",
        "blockNumber": 345
    }
}
rejectCBDCRetirement
Nome do método original: rejectBurn
Este método pode ser chamado por um notário para rejeitar uma solicitação de gravação.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • tokenId: string – O ID do token a ser rejeitado para gravação.
  • operationId: string – O ID de operação exclusivo que representa a solicitação de gravação.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "af2cc8e43ecb4c5520d90a8d7955b5a47623a29b13eef47e31c16eb48cc0adec",
        "payload": {
            "msg": "Successfully rejected burn request with Operation Id '8d34' to burn 100 tokens of token id USD"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20011",
        "blockNumber": 346
    }
}
rejectHoldCBDCTokens
Nome do método original: releaseHoldTokens
Este método POST libera uma retenção de tokens. A transferência não foi concluída e todos os tokens retidos estão disponíveis novamente para o proprietário original. Esse método pode ser chamado pelo ID AccountOwner com a função notary dentro do limite de tempo especificado ou pelo pagador, favorecido ou notário após o limite de tempo especificado.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • tokenId: string – O ID do token.
  • operationId: string – Um ID exclusivo para identificar a operação de retenção. Geralmente, esse ID é passado pelo aplicativo cliente.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "c628fb7738222ed969295ccc8d21b4be95d96e3aada4f14570f7820a7051b5f7",
        "payload": {
            "msg": "Successfully released '200' tokens from Operation Id '77b75873' to Account Id: oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a (Org-Id: CentralBank, User-Id: cb_issuer_demo)."
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20009",
        "blockNumber": 347
    }
}
removeCBAdmin
Nome do método original: removeTokenAdmin
Este método POST remove um usuário como um Token Admin do chaincode. Esse método só pode ser chamado por um Token Admin do chaincode. Um administrador não pode remover a si mesmo.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • orgId: string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • userId: string – O nome de usuário ou ID de e-mail do usuário.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "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
Nome do método original: removeTokenAuditor
Este método POST remove um usuário como um Token Auditor do chaincode. Esse método só pode ser chamado por um Token Admin do chaincode.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • orgId: string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • userId: string – O nome de usuário ou ID de e-mail do usuário.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "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
Nome do método original: removeOrgAdmin
Este método POST remove um usuário como um Org Admin do chaincode. Esse método só pode ser chamado por uma Token Admin ou Org Admin da organização especificada. Um Org Admin não pode remover a si mesmo.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • orgId: string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • userId: string – O nome de usuário ou ID de e-mail do usuário.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "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
Nome do método original: removeOrgAuditor
Este método POST remove um usuário como um Org Auditor do chaincode. Esse método só pode ser chamado por uma Token Admin ou Org Admin da organização especificada.
Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • orgId: string – O ID do provedor de serviços de associação (MSP) do usuário na organização atual.
  • userId: string – O nome de usuário ou ID de e-mail do usuário.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "c3bc720461004a53b37c68d4bb264858b88d980bc093a0a3ebb62a32974fb306",
        "payload": {
            "msg": "Successfully removed Org Auditor (Org_Id: CB, User_Id: cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20010",
        "blockNumber": 221
    }
}
removeRole
Nome do método original: removeRole
Este método remove uma atribuição de um usuário e token especificados. Esse método só pode ser chamado por uma Token Admin do chaincode ou por uma Org Admin da organização especificada.
Payload:
{
    "accountId": "account_id value",
    "role": "role value (for example minter / burner / notary)",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • accountId: string – O ID da conta.
  • role: string – O nome da atribuição a ser removida do usuário especificado. Os comportamentos mintable e burnable correspondem às propriedades minter_role_name e burner_role_name do arquivo de especificação. Da mesma forma, a atribuição notary corresponde à propriedade notary_role_name do arquivo de especificação.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "d92538a8f9cf2d45a0c14307ce192c399230cbf4022cec5dd6ce560cca527bf3",
        "payload": {
            "msg": "Successfully removed role 'notary' from Account Id: oaccount~e8450f7a1f320658169315fb4148ad7cb4c47c31435420fd459665f41238221b"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 72
    }
}
requestCBDCCreation
Nome do método original: requestMint
Este método pode ser chamado por um mineiro para enviar uma solicitação ao notário do mineiro para criar uma quantidade especificada de tokens.
Payload:
{
    "operationId": "operation_id value",
    "notaryAccountId": "notary_account_id value",
    "quantity": 1,
    "timeToExpiration": "time_to_expiration value",
    "infoDetails": "{\"category\":\"category value\",\"description\":\"description value\"}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • operationId: string – O ID de operação exclusivo que representa a solicitação de hortelã.
  • notaryAccountId: string – O ID da conta do notário do mineiro que processará a solicitação.
  • quantity: number – A quantidade de tokens para hortelã.
  • timeToExpiration – O tempo após o qual a solicitação de cunhagem expira e não é mais válida.
  • infoDetails: JSON – Um objeto que especifica a categoria (category) e a descrição (description) da solicitação, conforme mostrado no exemplo a seguir.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "1982f73495060e0eef4d78282a91c41e27e8c95572739b0677a1e404a0d20aa9",
        "payload": {
            "msg": "AccountId oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41 has successfully submitted request to mint 200 tokens"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20009",
        "blockNumber": 332
    }
}
requestCBDCRetirement
Nome do método original: requestBurn
Este método pode ser chamado por um queimador para enviar uma solicitação ao notário para destruir uma quantidade especificada de tokens.
Payload:
{
    "operationId": "operation_id value",
    "notaryAccountId": "notary_account_id value",
    "quantity": 1,
    "timeToExpiration": "time_to_expiration value",
    "infoDetails": "{\"category\":\"category value\",\"description\":\"description value\"}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • operationId: string – O ID de operação exclusivo que representa a solicitação de gravação.
  • notaryAccountId: string – O ID da conta do notário que processará a solicitação.
  • quantity: number – A quantidade de tokens a serem gravados.
  • timeToExpiration – O tempo após o qual a solicitação de gravação expira e não é mais válida.
  • infoDetails: JSON – Um objeto que especifica a categoria (category) e a descrição (description) da solicitação, conforme mostrado no exemplo a seguir.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "3b1ba40490dea9bcc4df6ad22ffc7651fbbea5d1889e42a1841ee48d6ae653c6",
        "payload": {
            "msg": "AccountId oaccount~cea6080858337b1575d6a76ed0bd07a0eacd8871e3f2f7f793729a0e4b0e8e98 has successfully submitted request to burn 100 tokens"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20011",
        "blockNumber": 333
    }
}
setApplicationGroups
Nome do método original: setApplicationGroups
Este método POST é usado para definir o parâmetro application_groups nos detalhes da conta para os grupos de aplicativos especificados. Esse método só pode ser chamado por uma Token Admin do chaincode ou por uma Org Admin da organização especificada.
Payload:
{
    "accountId": "account_id value",
    "applicationGroups": "[\"application_groups value\"]",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • accountId: string – O ID da conta de token.
  • applicationGroups: string[] – Uma lista de grupos de aplicativos aos quais o ID do usuário pertence, definindo as associações do usuário no aplicativo CBDC.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "828fd2ece518fcf266868c840b3b1fc6b967c5c64d7591c42eb18c0c7850dc32",
        "payload": {
            "bapAccountVersion": 10,
            "assetType": "oaccount",
            "account_id": "oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a",
            "org_id": "CentralBank",
            "token_type": "fungible",
            "token_id": "USD",
            "token_name": "cbdc",
            "balance": "02c4601262fa7ece1ffc909811f829ad973d4133ca27c9c0fa82972d441400ad3e",
            "onhold_balance": "028954d23bfabee1a10d9f5a07793dec08ab0f93fd506079b0fa33f525d527595f",
            "onhold_burn_balance": "028954d23bfabee1a10d9f5a07793dec08ab0f93fd506079b0fa33f525d527595f",
            "application_groups": [
                "SYSTEM_RETIRERS"
            ]
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 348
    }
}
setMaxDailyAmount
Nome do método original: setMaxDailyAmount
Este método POST é usado para definir o parâmetro maxDailyAmount nos detalhes da conta para o valor especificado. Esse método só pode ser chamado por uma Token Admin do chaincode ou por uma Org Admin da organização especificada.
Payload:
{
    "accountId": "account_id value",
    "maxDailyAmount": "max_daily_amount value",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • accountId: string – O ID da conta de token.
  • maxDailyAmount: number – O valor máximo diário da conta especificada, que define o valor máximo que pode ser transacionado diariamente.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "d6a8c26602c2a9cef5d6d563dbc50044af6380c96f7295e2c8e1bbf576cef36f",
        "payload": {
            "msg": "Successfully set max daily amount for account id oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a to 1000000"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 351
    }
}
setMaxDailyTransactionCount
Nome do método original: setMaxDailyTransactionCount
Este método POST é usado para definir o parâmetro maxDailyTransactions nos detalhes da conta para o valor especificado. Esse método só pode ser chamado por uma Token Admin do chaincode ou por uma Org Admin da organização especificada.
Payload:
{
    "accountId": "account_id value",
    "maxDailyTransactions": "max_daily_transactions value",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • accountId: string – O ID da conta de token.
  • maxDailyTransactions: number – O valor máximo diário da conta especificada, que define o número máximo de transações permitidas por dia.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "c819da688bbe9cd4ef6fae79af014c66438b5f9d17f771d3ffc5878288097614",
        "payload": {
            "msg": "Successfully set max daily transactions for account id oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a to 100000"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 350
    }
}
suspendCBDCAccount
Nome do método original: suspendAccount
Este método suspende uma conta de token fungível. Ele gerará um erro se um valor accountStatus não for encontrado no razão. Esse método só pode ser chamado por uma Token Admin do chaincode ou por uma Org Admin da organização especificada.
Payload:
{
    "accountId": "account_id value",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • accountId: string – O ID da conta de token.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "1fa66e75ba2ab9376944a8b4e362d5fe54e167f8ada989bd9653ea54f7557aea",
        "payload": {
            "assetType": "oaccountStatus",
            "status_id": "oaccountStatus~d0b8ba4d154d19fd7e61e7793795a5a5b65e2266102aafdd6d01cec1a3336c71",
            "account_id": "oaccount~c44ffac4c46718e9744cb0aae2016d26a87a5bef5e2d1c0d1abc7d8782f0ba61",
            "status": "suspended"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20011",
        "blockNumber": 342
    }
}
transferCBDCTokens
Nome do método original: transferTokens
Este método transfere tokens do chamador para uma conta especificada. O chamador do método deve ter uma conta. A quantidade deve estar dentro dos valores decimais especificados pelo parâmetro decimal do comportamento divisible no arquivo de especificação.
Payload:
{
    "toAccountId": "to_account_id value",
    "quantity": 1,
    "infoDetails": "{\"category\":\"category value\",\"description\":\"description value\"}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros:
  • toAccountId: string – O ID da conta do destinatário.
  • quantity: number – O número de tokens a serem transferidos.
  • infoDetails: JSON – Um objeto que especifica a categoria (category) e a descrição (description) da solicitação, conforme mostrado no exemplo a seguir.
    {
         "category" : "category input",
         "description" : "description input"
    }
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "62eb436be7c29fc2ed9cae221e874d9a31b163fa10374e7da09bf5e09a96c3ff",
        "payload": {
            "msg": "Successfully transferred 10000 tokens from account id: oaccount~da6e14466a0ba9b48ebc18fa672addb92dffc371bf953c3229a95b2ff2d9cd41  to account id: oaccount~68d67712f500e9dac8c314c19744003a993250271d960e9b0d25267bb18dfe9a."
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 352
    }
}

O pacote da API wrapper também inclui as APIs approveHoldCBDCTokensInterOrg e createCBDCAccount, que combinam APIs chaincode e APIs da console do Oracle Blockchain Platform em um único ponto final para criação de conta.

approveHoldCBDCTokensInterOrg
Este método transfere tokens de forma segura entre as organizações. Internamente, esse método usa a API de commit de duas fases no Oracle Blockchain Platform.
Payload:
{
    "tokenId": "{{bc-token-id}}",
    "operationId": "operation_id value",
    "quantity": 1,
    "senderEndorsers": ["Sender Endorsers values"],
    "receiverEndorsers": ["Receiver Endorsers values"],
    "transientMapArgsFlag": true
}
Parâmetros de carga útil:
  • tokenId: string – O ID do token CBDC a ser transferido. O ID do token deve existir no razão.
  • operationId: string – O ID de operação exclusivo da solicitação de transferência (retenção) a ser aprovada.
  • quantity: number – O número de tokens a serem transferidos.
  • senderEndorsers: string[] – Um array dos pares na organização do remetente (por exemplo, ["peer0.senderorg", "peer1.senderorg"]) que deve endossar a transação.
  • receiverEndorsers: string[] – Um array dos pares na organização recebedora (por exemplo, ["peer0.receiverorg", "peer1.receiverorg") que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "transactions": [
            {
                "channel": "buildtest",
                "chaincode": "WCBDCConfAug13",
                "txstatus": "Committed",
                "prepare": {
                    "txid": "3140569a4ecb3c3f141cc2468fe21276640b7fd79013d951d9104b79072d8f9c",
                    "blockNumber": 335
                },
                "commit": {
                    "txid": "9cfa020acc13c1de911e8a53eae799f47c1947d88a608753edb4b97fe45d00cc",
                    "blockNumber": 336
                },
                "rollback": {}
            },
            {
                "channel": "buildtest",
                "chaincode": "WCBDCConfAug13",
                "txstatus": "Committed",
                "prepare": {
                    "txid": "32137cd7e16c560f4d96d0f8999f6a267c1e95be2f5b11ef0541e574a6cd7275",
                    "blockNumber": 335
                },
                "commit": {
                    "txid": "ac55bd7648680ff6b795e4a99026d7c538f68167683e1e622e55778a2930614d",
                    "blockNumber": 336
                },
                "rollback": {}
            }
        ],
        "lrc": {},
        "globalStatus": "Success",
        "globalTxid": "b54d4333-f4bb-4ca4-a7b7-cc75b659d912",
        "txStartTime": "2025-08-25T13:16:55.825578503Z"
    }
}
createCBDCAccount

A API createCBDCAccount conclui as operações a seguir em sequência.

  1. Cria um ID de inscrição para o usuário no Oracle Blockchain Platform. O ID matrícula criado é igual ao ID usuário, com algumas limitações. O ID pode conter somente caracteres alfanuméricos, hifens (-) e sublinhados (_). Se o ID usuário contiver outros caracteres especiais, eles serão substituídos por um sublinhado (_). Por exemplo, se o ID usuário for adam.fripp@example.com, o ID de inscrição criado será adam_fripp_example_com. Se a matrícula já existir para o ID usuário especificado, outra matrícula não será criada.
  2. Cria uma conta no razão com os detalhes fornecidos na carga útil.
  3. Associa a nova conta ao token especificado no payload.
  4. Atribui a atribuição especificada no payload ao usuário.

Para garantir a consistência e evitar dados incompletos, se alguma das etapas subsequentes falhar, o ID de inscrição criado na primeira etapa será excluído.

Payload:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "applicationGroups": "[\"applicationGroups value\"]",
    "customAccountId": "custom_account_id value",
    "tokenId": "{{bc-token-id}}",
    "role": "role value (for example minter / burner / notary / tokenAdmin / tokenAuditor / orgAdmin / orgAuditor/ No)",
    "dailyLimits": "{\"max_daily_amount\":1000, \"max_daily_transactions\":100}",
    "endorsers": {{endorsers}},
    "transientMapArgsFlag": true
}
Parâmetros de carga útil:
  • orgId – O ID do provedor de serviços de associação (MSP) do usuário para o qual a conta será criada. O ID deve começar com um caractere alfanumérico e pode incluir letras, números e caracteres especiais, como sublinhados (_), pontos (.), sinais (@) e hifens (-).
  • userId – O nome de usuário ou ID de e-mail do usuário. O ID deve começar com um caractere alfanumérico e pode incluir letras, números e caracteres especiais, como sublinhados (_), pontos (.), sinais (@) e hifens (-).
  • applicationGroups – Os grupos de aplicativos aos quais a conta pertencerá. Por exemplo, System_Admins.
  • customAccountId – Um ID aleatório exclusivo para contas que usam chaincode de modo confidencial.
  • tokenId – O ID do token associado à conta. O ID deve começar com um caractere alfanumérico e pode incluir letras, números e os caracteres especiais sublinhado (_) e hífen (-). Não pode exceder 16 caracteres de comprimento.
  • role – A função deve ser um dos seguintes valores: minter, burner, notary, tokenAdmin, tokenAuditor, orgAdmin ou orgAuditor.
  • dailyLimits – Dois campos numéricos que definem os limites de transação diária: max_daily_amount e max_daily_transactions.
  • endorsers: string[] – Um array dos pares (por exemplo, peer1, peer2) que deve endossar a transação.
  • transientMapArgsFlag – Um valor booliano. Se verdadeiro, os argumentos são enviados através de um mapa transitório para confidencialidade. Se for falso, os argumentos serão enviados por meio do payload padrão.
Exemplo de Valor de Retorno:
"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"
     }
 }