-
activateAccount
- Nome do método original:
activateAccount
- Este método POST ativa uma conta de token. Este método pode ser chamado apenas por um administrador ou proprietário da conta. As contas excluídas não podem ser ativadas.
- Payload:
{
"tokenId": "{{bc-token-id}}",
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parâmetros:
tokenId: string
– O ID do token.
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Retorna:
- Com êxito, uma representação JSON do objeto de status da conta para a conta de token especificada.
- Exemplo de valor de retorno:
{
"assetType": "oaccountStatus",
"status_id": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"account_id": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "active"
}
-
addTokenAdmin
- Nome do método original:
addTokenAdmin
- Este método POST adiciona outros administradores ao chaincode de token. Este método pode ser chamado apenas pelo administrador de token do chaincode.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Retorna:
- Em caso de sucesso, uma mensagem que inclui detalhes do usuário que foi adicionado como um
Token Admin
do chaincode.
- Exemplo de valor de retorno:
{
"msg": "Successfully added Admin (OrgId: appDev, UserId: user1)"
}
-
addRole
- Nome do método original:
addRole
- Este método POST adiciona uma atribuição a um usuário e token especificados. Este método pode ser chamado somente por um
Token Admin
do chaincode. Tokens não fungíveis são especificados pelo nome do token. O usuário especificado deve ter uma conta de token não fungível. A atribuição especificada deve existir no arquivo de especificação do token.
- Payload:
{
"tokenId": "{{bc-token-id}}",
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"role": "role minter/burner"
"tokenDetails": "{"tokenName": "token name value"}"
"endorsers": {{endorsers}}
}
- Parâmetros:
- Retorna:
- Em caso de êxito, uma mensagem com detalhes da conta.
- Exemplo de valor de retorno:
{
"msg": "Successfully added role 'minter' to Account Id: oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: idcqa)"
}
-
approveBondRedemption
- Nome do método original:
approveBondRedemption
- Esse método POST só pode ser chamado pelo criador do token para aprovar uma solicitação de resgate de tokens de títulos. A operação de aprovação transfere o NFT do título da conta do proprietário (o usuário que gerou a solicitação) para a conta do criador e transfere tokens CBDC do criador do título para a conta do proprietário. Por causa disso, esse método deve ser executado no contexto de uma transação atômica. O método também verifica o processo de transferência, garantindo que o chaincode CBDC apropriado seja chamado com os
orgId
e userId
corretos para a transferência. O orgId
e o userId
devem corresponder à conta do proprietário do token que gerou a solicitação de resgate, e o valor de transferência do token CBDC deve ser igual ao preço de resgate calculado que foi calculado pelo chaincode ao gerar a solicitação de resgate.
- Payload:
{
"fromOrgId": "fromOrgId value",
"fromUserId": "fromUserId value",
"settlementId": "settlementId value",
"tokenId": "{{bc-token-id}}",
"CBDCTokenId": "CBDCTokenId value",
"CBDCFromOrgId": "CBDCFromOrgId value",
"CBDCFromUserId": "CBDCFromUserId value",
"CBDCQuantity": 0,
"CBDCRemark": "{\\\"category\\\":\\\"category value\\\",\\\"description\\\":\\\"description value\\\"}",
"endorsers": {{endorsers}}
}
- Parâmetros:
fromOrgId: string
– O ID do provedor de serviços de associação (MSP) do usuário.
fromUserId: string
– O nome de usuário ou o ID de e-mail do usuário.
settlementId: string
– O ID da liquidação da operação de resgate.
tokenId: string
– O ID do token.
CBDCTokenId: string
– O ID do token no chaincode do CBDC.
CBDCOrgId: string
– O ID do MSP do usuário no chaincode do CBDC.
CBDCUserId: string
– O nome do usuário ou o ID do e-mail do usuário no chaincode do CBDC.
CBDCQuantity: string
– A quantidade de tokens a serem transferidos no chaincode do CBDC.
CBDCRemark: string
– Uma observação para a transferência no chaincode do CBDC, que deve estar no formato mostrado anteriormente.
- Exemplo de valor de retorno:
{
"returnCode":"Success",
"error":"",
"result":{
"transactions":[
{
"channel":"test",
"chaincode":"BondMarketplace",
"txstatus":"Committed",
"prepare":{
"txid":"e969f962df5efda2ea6287380e308cc974efd79dfff3567840ed3844bf936160"
},
"commit":{
"txid":"5544e928d3242291fb39189e8329679a9c81d61d6f72db60ca89135cd20fffef"
},
"rollback":{
}
},
{
"channel":"cbdctest",
"chaincode":"cbdc",
"txstatus":"Committed",
"prepare":{
"txid":"1245885b1a0c7f12c41fa2f2905549b8a5f37ab3a5e094b9dca122cb0611a117"
},
"commit":{
"txid":"3c83e20c7d470cdc9c1b0e2e0ea8d9962d58ada8d1b8f0d2606c8aa1f0ae7741"
},
"rollback":{
}
}
],
"lrc":{
},
"globalStatus":"Success",
"globalTxid":"761bb7cc-1d66-4645-aeb2-50e4dbd23d83",
"txStartTime":"2024-12-05T12:01:21.881988035Z"
}
}
-
balanceOfBatch
- Nome do método original:
balanceOfBatch
- Este método GET conclui uma operação de lote que obtém o saldo de contas de token. Os detalhes da conta são especificados em três listas separadas de IDs de organização, IDs usuário e IDs token. Esse método só pode ser chamado por um
Token Admin
do chaincode ou por proprietários de contas. Os proprietários da conta só podem ver os detalhes do saldo das contas que possuem.
- Consulta:
/balanceOfBatch?orgIds=["{{bc-org-id}}"]&userIds=["{{bc-user-id}}"]&tokenIds=["{{bc-token-id}}"]
- Parâmetros:
orgIds: string[]
– Uma lista dos IDs do prestador de serviço de associação (MSP) na organização atual.
userIds: string[]
– Uma lista do nome de usuário ou IDs de e-mail.
tokenIds: string[]
– Uma lista dos IDs de token.
- Exemplo de valor de retorno:
No exemplo a seguir, o ID de token FNFT
representa um token não fungível fracionário e o ID de token FT
representa um token fungível.
[
{
"orgId": "appdev",
"userId": "idcqa",
"userAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"tokenAccountId": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
"tokenId": "FNFT",
"balance": 100
},
{
"orgId": "appdev",
"userId": "idcqa",
"userAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"tokenAccountId": "oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e",
"tokenId": "FT",
"balance": 50
},
{
"orgId": "appdev",
"userId": "user1_minter",
"userAccountId": "ouaccount~9501bb774c156eb8354dfe489250ea91f757523d70f08ee494bda98bb352003b",
"tokenAccountId": "oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446",
"tokenId": "FNFT",
"balance": 10
}
]
-
batchTransferFrom
- Nome do método original:
batchTransferFrom
- Este método POST conclui uma operação em batch que transfere tokens especificados em uma lista de IDs de token de um usuário para outro.
- Payload:
{
"fromOrgId": "fromOrgId value",
"fromUserId": "fromUserId value",
"toOrgId": "toOrgId value",
"toUserId": "toUserId value",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"endorsers": {{endorsers}}
}
- Parâmetros:
fromOrgId: string
– O ID do provedor de serviços de associação (MSP) do remetente e do proprietário do token na organização atual.
fromUserId: string
– O nome do usuário ou o ID do e-mail do remetente e do proprietário do token.
toOrgId: string
– O ID do prestador de serviço de associação (MSP) do destinatário na organização atual.
toUserId: string
– O nome do usuário ou o ID do e-mail do destinatário.
tokenIds: string[]
– Uma lista de IDs de token para os tokens a serem transferidos.
quantity: number[]
– A lista de quantidades de tokens a serem transferidos, correspondente ao array do ID do token.
- Retorna:
- Com êxito, uma mensagem com detalhes para cada transferência de token.
- Exemplo de valor de retorno:
[
{
"msg": "Successfully transferred NFT token: 'FNFT' of '10' quantity from Account-Id: oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371 (Org-Id: appdev, User-Id: idcqa) to Account-Id: oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446 (Org-Id: appdev, User-Id: user1_minter)"
},
{
"msg": "Successfully transferred 10 FT token: 'FT' from Account-Id: oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e (Org-Id: appdev, User-Id: idcqa) to Account-Id: oaccount~1089ee5122f367ee0ca38c6660298f4b81f199627e4f67f3691c0f628237974c (Org-Id: appdev, User-Id: user1_minter)"
},
{
"msg": "Successfully transferred NFT token: 'NFT' from Account-Id: oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371 (Org-Id: appdev, User-Id: idcqa) to Account-Id: oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446 (Org-Id: appdev, User-Id: user1_minter)"
}
]
-
burnBatch
- Nome do método original:
burnBatch
- Este método POST desativa ou queima os tokens especificados. Qualquer usuário com a função de gravador pode chamar esse método.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"sameOrgEndorser": true
}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) na organização atual.
userId: string
– O nome do usuário ou o ID do e-mail.
tokenIds: string[]
– A lista de IDs de token a serem gravados
quantity: number[]
– A lista de quantidades de tokens a serem gravados, correspondente ao array do ID do token.
- Retorna:
- Em caso de sucesso, uma mensagem com detalhes sobre as operações de gravação.
- Exemplo de valor de retorno:
[
{
"msg": "Successfully burned NFT token: 'art' from Account-Id: oaccount~76cb672eeb1bd535899562a840d0c15a356db89e24bc8b43ac1dba845a4282c6 (Org-Id: appdev, User-Id: idcqa)"
},
{
"msg": "Successfully burned 5 tokens of tokenId: tokenOne from Account-ID oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: idcqa)"
},
{
"msg": "Successfully burned 2 token share of tokenId: FNFT from Account-ID oaccount~87bcb699d507368ee3966cd03ee6d7736ffc55dde8c0f0e16b14866334ac504a (Org-Id: AutoF1377358917, User-Id: idcqa)"
}
]
-
createAccount
- Nome do método original:
createAccount
- Este método POST cria uma conta para um usuário especificado e contas de token associadas para tokens. Uma conta deve ser criada para qualquer usuário que terá tokens a qualquer momento. A conta de usuário rastreia a conta NFT e as contas de token fungíveis que um usuário mantém. Os usuários devem ter contas na rede para concluir operações relacionadas a token. Este método pode ser chamado somente por um
Token Admin
do chaincode.
Uma conta de usuário tem um ID exclusivo, que é formado por um hash SHA-256 do parâmetro orgId
e do parâmetro userId
.
Um usuário pode ter várias contas de token fungíveis com IDs de conta exclusivos. Os IDs de conta de token fungível são formados por um hash SHA-256 do parâmetro orgId
, o parâmetro userId
, a string constante ft
separada pelo símbolo til (~
) e um número de contador que significa o índice da conta fungível que está sendo criada separada pelo símbolo til (~
).
Um usuário pode ter apenas uma conta de token não fungível. Os IDs de conta de token não fungíveis são exclusivos e são formados por um hash SHA-256 do parâmetro orgId
, do parâmetro userId
e da string constante nft
separada pelo símbolo til (~
). Todos os tokens não fungíveis que um usuário possui, sejam inteiros ou fracionários, estão vinculados a essa conta.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"ftAccount": true,
"nftAccount": true,
"endorsers": {{endorsers}}
}
- 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 do usuário ou o ID do 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 (-).
ftAccount: boolean
– Se verdadeiro, uma conta de token fungível será criada e associada à conta do usuário.
nftAccount: boolean
– Se verdadeiro, uma conta de token não fungível será criada e associada à conta do usuário.
- Retorna:
- Com êxito, um objeto JSON da conta que foi criado.
- Exemplo de valor de retorno:
{
"assetType": "ouaccount",
"accountId": "ouaccount~cf20877546f52687f387e7c91d88b9722c97e1a456cc0484f40c747f7804feae",
"userId": "user1",
"orgId": "appdev",
"totalAccounts": 2,
"totalFtAccounts": 1,
"associatedFtAccounts": [
{
"accountId": "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b",
"tokenId": ""
}
],
"associatedNftAccount": "oaccount~73c3e835dac6d0a56ca9d8def08269f83cefd59b9d297fe2cdc5a9083828fa58"
}
-
createAccountWithEnrollment
- Nome do método original:
createAccountWithEnrollment
- Esse método POST cria uma inscrição para um usuário no proxy REST da instância e cria uma conta NFT no chaincode do mercado de títulos.
- Payload:
{
"orgId": "orgId value",
"userId": "userId value"
}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Retorna:
- Com êxito, um objeto JSON da conta que foi criado.
- Exemplo de valor de retorno:
{
"blockNumber": 44,
"encode": "JSON",
"payload": {
"accountId": "ouaccount~1930ec223036c0fe2ea97c58fd9a8d2456d13c0fd0c98217ce075ceddb8add02",
"assetType": "ouaccount",
"associatedFtAccounts": [],
"associatedNftAccount": "oaccount~03f8a6949f6c5c453354a4a8eed8503a39766085b476430e95ce305769fba861",
"orgId": "BondMPTest",
"totalAccounts": 1,
"totalFtAccounts": 0,
"userId": "u14"
},
"sourceURL": "bondmptest-oabcs1-iad.blockchain.ocp.example.com:20010",
"txid": "9fa75a631f0de2ddf2ed85742dcc4d4b97b7afb0d3f9a07988e5cb9120ed633f"
}
-
createBondToken
- Nome do método original:
createBondToken
- Este método POST cria tokens. Cada token definido tem seu próprio método de criação. Para tokens não fungíveis, o chamador desse método se torna o proprietário do NFT. Se o comportamento
roles
for definido na propriedade behaviors
do modelo de token e um minter_role_name
for especificado, a conta do chamador deverá ter a atribuição de minter.
- Payload:
{
"tokenAsset": "{\"tokenId\":\"{{bc-token-id}}\",\"tokenDesc\":\"tokenDesc value\",\"tokenUri\":\"tokenUri value\",\"tokenMetadata\":{\"ISIN\":\"ISIN value\",\"Segment\":\"Segment value\",\"Issuer\":\"Issuer value\",\"FaceValue\":999,\"IssueSize\":999,\"CouponRate\":999,\"InterestPaymentType\":\"InterestPaymentType value\",\"InterestFrequency\":\"InterestFrequency value\",\"IssueDate\":\"2023-03-28T15:16:36+00:00\",\"MaturityDate\":\"2023-03-28T15:16:36+00:00\"},\"status\":\"status value\"}",
"quantity": 1,
"sameOrgEndorser": true
}
- Parâmetros:
tokenAsset: <Token Class>
– O ativo de token. As propriedades do ativo são definidas no arquivo de modelo.
quantity: number
– O número de tokens a serem cunhados. O único valor suportado para esse parâmetro é 1
.
- Retorna:
- Com êxito, um objeto JSON da conta que foi criado.
- Exemplo de valor de retorno:
{
"tokenMetadata": {
"ISIN": "ISIN value",
"Segment": "Segment value",
"Issuer": "Issuer value",
"FaceValue": 999,
"IssueSize": 999,
"CouponRate": 999,
"InterestPaymentType": "simple",
"InterestFrequency": "monthly",
"IssueDate": "2023-03-28T15:16:36.000Z",
"MaturityDate": "2023-03-28T15:16:36.000Z"
},
"assetType": "otoken",
"events": false,
"tokenId": "token2",
"tokenName": "bond",
"tokenDesc": "tokenDesc value",
"tokenStandard": "erc1155+",
"tokenType": "nonfungible",
"tokenUnit": "fractional",
"behaviors": [
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles": {
"minter_role_name": "minter",
"burner_role_name": "burner"
},
"mintable": {
"max_mint_quantity": 0
},
"quantity": 10,
"createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43",
"creationDate": "2024-12-03T12:07:24.000Z",
"divisible": {
"decimal": 0
},
"isBurned": false,
"isLocked": false,
"tokenUri": "tokenUri value",
"status": "created"
}
-
createIDSCUser
- Nome do método original:
createIDCSUser
- Esse método POST cria um usuário do Identity Cloud Service na tenancy especificada pelo URL no arquivo
terraform.tfvars
e designa o usuário ao grupo de usuários especificado.
- Payload:
{
"userName": "userName value",
"firstName": "firstName value",
"lastName": "lastName value",
"email": "email value",
"groupName": "groupName value"
}
- Parâmetros:
userName: string
– O ID do usuário.
firstName: string
– O nome do usuário.
lastName: string
– O sobrenome do usuário.
email: string
– O endereço de e-mail do usuário.
groupName: string
– O nome do grupo do Identity Cloud Service a ser designado ao usuário.
- Exemplo de valor de retorno:
{
"status": "Success",
"msg": "User user1 is created and assigned to the group BOND_ADMIN"
}
-
createTokenAccount
- Nome do método original:
createTokenAccount
- Este método POST cria uma conta de token fungível ou não fungível para associar a uma conta de usuário.
Um usuário pode ter várias contas de token fungíveis com IDs de conta exclusivos. Os IDs de conta de token fungível são formados por um hash SHA-256 do parâmetro orgId
, o parâmetro userId
, a string constante ft
separada pelo símbolo til (~
) e um número de contador que significa o índice da conta fungível que está sendo criada separada pelo símbolo til (~
).
Um usuário pode ter apenas uma conta de token não fungível. Os IDs de conta de token não fungíveis são exclusivos e são formados por um hash SHA-256 do parâmetro orgId
, do parâmetro userId
e da string constante nft
separada pelo símbolo til (~
). Todos os tokens não fungíveis que um usuário possui, sejam inteiros ou fracionários, estão vinculados a essa conta.
Este método pode ser chamado somente por um Token Admin
do chaincode.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenType": "nonfungible",
"endorsers": {{endorsers}}
}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
tokenType: TokenType
– O tipo de conta de token a ser criada. Os únicos tipos de token suportados são nonfungible
e fungible
.
- Retorna:
- Com êxito, um objeto JSON da conta de token que foi criada.
- Exemplo de valor de retorno:
{
"assetType": "ouaccount",
"accountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc",
"userId": "user2",
"orgId": "appdev",
"totalAccounts": 1,
"totalFtAccounts": 1,
"associatedFtAccounts": [
{
"accountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
"tokenId": ""
}
],
"associatedNftAccount": ""
}
-
createUserAccount
- Nome do método original:
createUserAccount
- Este método POST cria uma conta para um usuário especificado. Uma conta deve ser criada para qualquer usuário que terá tokens a qualquer momento. A conta de usuário rastreia a conta NFT e as contas de token fungíveis que um usuário tem. Os usuários devem ter contas na rede para concluir operações relacionadas a token.
Um ID de conta é um hash SHA-256 do parâmetro orgId
e do parâmetro userId
. Este método pode ser chamado somente por um Token Admin
do chaincode.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Retorna:
- Com êxito, um objeto JSON da conta de usuário que foi criado.
- Exemplo de valor de retorno:
{
"assetType": "ouaccount",
"accountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc",
"userId": "user2",
"orgId": "appdev",
"totalAccounts": 0,
"totalFtAccounts": 0,
"associatedFtAccounts": [],
"associatedNftAccount": ""
}
-
deleteAccount
- Nome do método original:
deleteAccount
- Este método POST exclui uma conta de token. Este método pode ser chamado somente por um
Token Admin
do chaincode. Este método lançará um erro se um valor accountStatus
para a conta não for encontrado no razão.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Retorna:
- Com êxito, uma representação JSON do status da conta de token.
- Exemplo de valor de retorno:
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "deleted"
}
-
getAccount
- Nome do método original:
getAccount
- Este método GET retorna detalhes da conta de token para um usuário especificado. Esse método só pode ser chamado por um
Token Admin
do chaincode ou pelo Account Owner
da conta.
- Consulta:
/getAccount?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
tokenId?: string
– Para uma conta de token não fungível, uma string vazia. Para uma conta de token fungível, o ID do token.
- Retorna:
- Em caso de sucesso, um objeto JSON que inclui detalhes da conta de token.
- Exemplo de Valor de Retorno
{
"assetType": "oaccount",
"accountId": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
"userId": "user2",
"orgId": "AppBldFFFFMay22",
"tokenType": "nonfungible",
"noOfNfts": 3
}
-
getAccountBondSummary
- Nome do método original:
getAccountBondSummary
- Este método GET retorna um resumo da conta para o usuário especificado, incluindo detalhes de tokens comprados ou resgatados e seus preços de compra e resgate.
- Consulta:
/getAccount?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Retorna:
- Em caso de sucesso, um objeto JSON que inclui o resumo da conta de token.
- Exemplo de Valor de Retorno
[
{
"userAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"orgId":"BondMPTest",
"userId":"u10",
"accountSummary":[
{
"purchasedQuantity":1,
"assetType":"oUserBondDetails",
"id":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op1",
"tokenId":"bond1",
"status":"Redeemed",
"purchasedAmount":11,
"purchasedDate":"2024-12-02T00:00:00.000Z",
"purchasedFromAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"orderId":"op1"
"redeemPrice":11,
"quantityRedeem":1,
"redeemStatus":"REJECTED"
},
{
"purchasedQuantity":1,
"assetType":"oUserBondDetails",
"id":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op2",
"tokenId":"bond1",
"status":"Purchased",
"purchasedAmount":11,
"purchasedDate":"2024-12-02T00:00:00.000Z",
"purchasedFromAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"orderId":"op2",
"redeemPrice":11,
"quantityRedeem":1,
"redeemStatus":"APPROVED"
}
]
-
getAccountBondSummaryWithPagination
- Nome do método original:
getAccountBondSummaryWithPagination
- Este método GET retorna um resumo da conta para o usuário especificado, incluindo detalhes de tokens comprados ou resgatados e seus preços de compra e resgate. Esse método pode retornar resultados com paginação com base nos valores de tamanho de página e marcador e também filtrado por hora de início e hora de término.
- Consulta:
/getAccountBondSummary?orgId={{bc-org-id}}&userId={{bc-user-id}}&pageSize=1&bookmark={{bookmark}}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
pageSize: number
– O tamanho da página do resultado retornado.
bookmark: string
– O marcador do resultado retornado.
- Retorna:
- Em caso de sucesso, um objeto JSON que inclui o resumo da conta de token.
- Exemplo de Valor de Retorno
[
{
"userAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"orgId":"BondMPTest",
"userId":"u10",
"accountSummary":[
{
"purchasedQuantity":1,
"assetType":"oUserBondDetails",
"id":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op1",
"tokenId":"bond1",
"status":"Redeemed",
"purchasedAmount":11,
"purchasedDate":"2024-12-02T00:00:00.000Z",
"purchasedFromAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"orderId":"op1"
"redeemPrice":11,
"quantityRedeem":1,
"redeemStatus":"REJECTED"
},
{
"purchasedQuantity":1,
"assetType":"oUserBondDetails",
"id":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op2",
"tokenId":"bond1",
"status":"Purchased",
"purchasedAmount":11,
"purchasedDate":"2024-12-02T00:00:00.000Z",
"purchasedFromAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"orderId":"op2",
"redeemPrice":11,
"quantityRedeem":1,
"redeemStatus":"APPROVED"
}
]
-
getAccountDetailsByUser
- Nome do método original:
getAccountDetailsByUser
- Este método GET retorna um resumo de conta para um usuário especificado e detalhes de tokens fungíveis e não fungíveis associados ao usuário. Esse método só pode ser chamado por um
Token Admin
do chaincode ou pelo Account Owner
da conta.
- Consulta:
/getAccountDetailsByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Retorna:
- Em caso de sucesso, um objeto de conta JSON que inclui e resume a conta do usuário especificado e detalhes de tokens fungíveis e não fungíveis associados ao usuário. Para tokens não fungíveis fracionários, a propriedade
tokenShare
na seção associatedNFTs
mostra o compartilhamento que o usuário possui.
- Exemplo de valor de retorno:
{
"userAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"associatedFTAccounts": [
{
"accountId": "oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e",
"tokenId": "FT",
"balance": 50
}
],
"associatedNFTAccount": {
"accountId": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
"associatedNFTs": [
{
"nftTokenId": "FNFT",
"tokenShare": 100
},
{
"nftTokenId": "FNFT2",
"tokenShare": 110
},
{
"nftTokenId": "NFT"
}
]
}
}
-
getAccountStatus
- Nome do método original:
getAccountStatus
- Este método GET recupera o status atual da conta de token. Esse método pode ser chamado pelo
Token Admin
do chaincode ou pelo proprietário da conta do token.
- Consulta:
/getAccountStatus?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Retorna:
- Com êxito, uma representação JSON do status da conta de token.
- Exemplo de valor de retorno:
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "active"
}
-
getAccountStatusHistory
- Nome do método original:
getAccountStatusHistory
- Este método GET recupera o histórico do status da conta. Esse método pode ser chamado pelo
Token Admin
do chaincode ou pelo proprietário da conta do token.
- Consulta:
/getAccountStatusHistory?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Retorna:
- Com êxito, o histórico de status da conta no formato JSON.
- Exemplo de valor de retorno:
[
{
"trxId": "d5c6d6f601257ba9b6edaf5b7660f00adc13c37d5321b8f7d3a35afab2e93e63",
"timeStamp": "2022-12-02T10:39:14.000Z",
"value": {
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "suspended"
}
},
{
"trxId": "e6c850cfa084dc20ad95fb2bb8165eef3a3bd62a0ac867cccee57c2003125183",
"timeStamp": "2022-12-02T10:37:50.000Z",
"value": {
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "active"
}
}
]
-
getAccountTransactionHistory
- Nome do método original:
getAccountTransactionHistory
- Este método GET retorna o histórico de transações da conta. Esse método só pode ser chamado por um
Token Admin
do chaincode ou pelo proprietário da conta.
/getAccountTransactionHistory?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Exemplo de valor de retorno:
[
{
"transactionId": "otransaction~3a6b23c3003626f3947e990eddbd7ac23398d2200e2eb3eac745e6ddfae140bc~7c88c736df38d5622512f1e8dcdd50710eb47c953f1ecb24ac44790a9e2f475b",
"timestamp": "2023-06-06T14:48:08.000Z",
"tokenId": "FNFT",
"transactedAmount": 10,
"triggeredByUserAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"transactedAccount": "oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446",
"transactionType": "DEBIT",
"balance": 90
},
{
"transactionId": "otransaction~3a6b23c3003626f3947e990eddbd7ac23398d2200e2eb3eac745e6ddfae140bc~178e3730bc5bee50d02f1464a4eebf733a051905f651e5789039adb4a3edc114",
"timestamp": "2023-06-06T14:48:08.000Z",
"tokenId": "NFT",
"triggeredByUserAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"transactedAccount": "oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446",
"transactionType": "DEBIT"
},
{
"transactionId": "otransaction~c369929e28e78de06c72d020f1418c9a154a7dd280b2e22ebb4ea4485e249124~a7cefb22ff39ee7e36967be71de27da6798548c872061a62dabc56d88d50b930",
"timestamp": "2023-06-06T14:47:08.000Z",
"tokenId": "NFT",
"triggeredByUserAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"transactedAccount": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
"transactionType": "MINT"
},
{
"transactionId": "otransaction~114a1bc78d04be48ee6dc140c32c042ee9481cb118959626f090eec744522422~e4eb15d9354f694230df8835ade012100d82aa43672896a2c7125a86e3048f9f",
"timestamp": "2023-06-05T17:17:57.000Z",
"tokenId": "FNFT",
"transactedAmount": 100,
"triggeredByUserAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"transactedAccount": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
"transactionType": "MINT",
"balance": 100
}
]
-
getAccountsByRole
- Nome do método original:
getAccountsByRole
- Esse método GET retorna uma lista de todos os IDs de conta para uma atribuição e um token especificados.
- Consulta:
/getAccountsByRole?role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Parâmetros:
role: string
– O nome da função a ser pesquisada.
tokenDetail: JSON
– Para tokens fungíveis, o ID do token. Para tokens não fungíveis, o nome do token obrigatório.
- Exemplo de valor de retorno:
{
"accounts": [
"oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
"oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b"
]
}
-
getAllAccounts
- Nome do método original:
getAllAccounts
- Este método GET retorna detalhes de todas as contas de usuário. Este método pode ser chamado somente por um
Token Admin
do chaincode.
- Consulta:
/getAllAccounts
- Parâmetros:
- Retorna:
- Com sucesso, um array JSON de todas as contas.
- Exemplo de valor de retorno:
[
{
"assetType": "ouaccount",
"accountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"userId": "user2",
"orgId": "appdev",
"totalAccounts": 2,
"totalFtAccounts": 1,
"associatedFtAccounts": [
{
"accountId": "oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e",
"tokenId": "loy1"
}
],
"associatedNftAccount": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371"
},
{
"assetType": "ouaccount",
"accountId": "ouaccount~9501bb774c156eb8354dfe489250ea91f757523d70f08ee494bda98bb352003b",
"userId": "user1_minter",
"orgId": "appdev",
"totalAccounts": 2,
"totalFtAccounts": 1,
"associatedFtAccounts": [
{
"accountId": "oaccount~1089ee5122f367ee0ca38c6660298f4b81f199627e4f67f3691c0f628237974c",
"tokenId": "loy1"
}
],
"associatedNftAccount": "oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446"
},
]
-
getAllTokenAdmins
- Nome do método original:
getAllTokenAdmins
- Este método GET retorna uma lista de todos os usuários que são um
Token Admin
do chaincode. Este método pode ser chamado somente por um Token Admin
do chaincode.
- Consulta:
/getAllTokenAdmins
- Parâmetros:
- Retorna:
- Em caso de sucesso, um array
admins
no formato JSON que contém objetos orgId
e userId
.
- Exemplo de valor de retorno:
{
"admins": [
{
"orgId": "appdev",
"userId": "user2"
},
{
"orgId": "appdev",
"userId": "user1"
}
]
}
-
getAllTokens
- Nome do método original:
getAllTokens
- Esse método retorna todos os ativos de token salvos no banco de dados de estado. Este método pode ser chamado somente por um
Token Admin
do chaincode. Esse método usa consultas ricas em SQL de BD Berkeley e só pode ser chamado quando conectado à rede remota do Oracle Blockchain Platform.
/getAllTokens
- Parâmetros:
- Retorna:
- Uma lista de todos os ativos de token no formato JSON.
- Exemplo de valor de retorno:
[{
"tokenMetadata": {
"ISIN": "ISIN value",
"Segment": "Segment value",
"Issuer": "Issuer value",
"FaceValue": 999,
"IssueSize": 999,
"CouponRate": 999,
"InterestPaymentType": "simple",
"InterestFrequency": "monthly",
"IssueDate": "2023-03-28T15:16:36.000Z",
"MaturityDate": "2023-03-28T15:16:36.000Z"
},
"assetType": "otoken",
"events": false,
"tokenId": "token2",
"tokenName": "bond",
"tokenDesc": "tokenDesc value",
"tokenStandard": "erc1155+",
"tokenType": "nonfungible",
"tokenUnit": "fractional",
"behaviors": [
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles": {
"minter_role_name": "minter",
"burner_role_name": "burner"
},
"mintable": {
"max_mint_quantity": 0
},
"quantity": 10,
"createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43",
"creationDate": "2024-12-03T12:07:24.000Z",
"divisible": {
"decimal": 0
},
"isBurned": false,
"isLocked": false,
"tokenUri": "tokenUri value",
"status": "status value"
}]
-
getAllTokensByUser
- Nome do método original:
getAllTokensByUser
- Este método GET retorna todos os ativos de token pertencentes a um usuário especificado. Esse método usa consultas ricas em SQL de BD Berkeley e só pode ser chamado quando conectado à rede remota do Oracle Blockchain Platform. Esse método só pode ser chamado por um
Token Admin
do chaincode ou pelo proprietário da conta.
- Consulta:
/getAllTokensByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Exemplo de valor de retorno:
[{
"tokenMetadata": {
"ISIN": "ISIN value",
"Segment": "Segment value",
"Issuer": "Issuer value",
"FaceValue": 999,
"IssueSize": 999,
"CouponRate": 999,
"InterestPaymentType": "simple",
"InterestFrequency": "monthly",
"IssueDate": "2023-03-28T15:16:36.000Z",
"MaturityDate": "2023-03-28T15:16:36.000Z"
},
"assetType": "otoken",
"events": false,
"tokenId": "token2",
"tokenName": "bond",
"tokenDesc": "tokenDesc value",
"tokenStandard": "erc1155+",
"tokenType": "nonfungible",
"tokenUnit": "fractional",
"behaviors": [
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles": {
"minter_role_name": "minter",
"burner_role_name": "burner"
},
"mintable": {
"max_mint_quantity": 0
},
"quantity": 10,
"createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43",
"creationDate": "2024-12-03T12:07:24.000Z",
"divisible": {
"decimal": 0
},
"isBurned": false,
"isLocked": false,
"tokenUri": "tokenUri value",
"status": "status value"
}]
-
getAllTokensWithFilters
- Nome do método original:
getAllTokensWithFilters
- O administrador pode chamar esse método GET para extrair todos os tokens filtrados por status.
- Consulta:
/getAllTokensWithFilters?status=status&pageSize=pageSize&bookmark=bookmark
- Parâmetros:
status: string
– O status do token, que pode ser CREATED
ou POSTED
.
pageSize: number
– O tamanho da página do resultado retornado.
bookmark: string
– O marcador do resultado retornado.
- Exemplo de valor de retorno:
[{
"tokenMetadata":{
"ISIN":"ISIN value",
"Segment":"Segment value",
"Issuer":"Issuer value",
"FaceValue":10,
"IssueSize":999,
"CouponRate":10,
"InterestPaymentType":"simple",
"InterestFrequency":"monthly",
"IssueDate":"2023-03-28T15:16:36.000Z",
"MaturityDate":"2023-03-28T15:16:36.000Z"
},
"assetType":"otoken",
"events":true,
"tokenId":"bond1",
"tokenName":"bond",
"tokenDesc":"tokenDesc value",
"tokenStandard":"erc1155+",
"tokenType":"nonfungible",
"tokenUnit":"fractional",
"behaviors":[
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles":{
"minter_role_name":"minter",
"burner_role_name":"burner"
},
"mintable":{
"max_mint_quantity":0
},
"quantity":100,
"createdBy":"oaccount~276bcf1324b1ad1e493e22432db3b39f7a4b9bb17b8525c0391ea3ba36138e00",
"creationDate":"2024-12-02T12:42:09.000Z",
"divisible":{
"decimal":0
},
"isBurned":false,
"isLocked":false,
"tokenUri":"tokenUri value",
"status":"posted"
}
]
-
getTokenApprovalRequestByUser
- Nome do método original:
getTokenApprovalRequestByUser
- Qualquer titular de conta pode chamar esse método GET para obter os detalhes de todas as solicitações de aprovação de token (solicitações de resgate) que fizeram.
- Consulta:
/getTokenApprovalRequestByUser?status=status value
- Parâmetros:
status: string
– O status da solicitação, que pode ser PENDING
, REJECTED
ou APPROVED
.
- Exemplo de valor de retorno:
[
{
"tokenName":"bond",
"assetType":"otokenApproval",
"id":"otokenApproval~5b2a94283ae95e3d6e5b76ffd6f75b7bff231e4df270a82cdc1f6badd17dea4b",
"settlementId":"op1",
"userBondDetailsId":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op1",
"fromAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"toAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"tokenId":"bond1",
"quantity":2,
"status":"APPROVED",
"orderId":"op1",
"redeemPrice":1,
"purchasedPrice":11,
"interestEarned":0
},
{
"tokenName":"bond",
"assetType":"otokenApproval",
"id":"otokenApproval~fdf28b2d271ac9c0fbd94a2dedbf365728c77795f3e931e5a4a2dcf48039a989",
"settlementId":"op3",
"userBondDetailsId":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op3",
"fromAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"toAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"tokenId":"bond1",
"quantity":1,
"status":"APPROVED",
"orderId":"op3",
"redeemPrice":11,
"purchasedPrice":11,
"interestEarned":0
}
]
-
getTokenApprovalRequestForUserByStatus
- Nome do método original:
getTokenApprovalRequestByUser
- Qualquer titular de conta pode chamar esse método GET para obter os detalhes de todas as solicitações de aprovação de token (solicitações de resgate) que fizeram.
- Consulta:
/getTokenApprovalRequestForUserByStatus?status=status value
- Parâmetros:
status: string
– O status da solicitação, que pode ser PENDING
, REJECTED
ou APPROVED
.
- Exemplo de valor de retorno:
[
{
"tokenName":"bond",
"assetType":"otokenApproval",
"id":"otokenApproval~5b2a94283ae95e3d6e5b76ffd6f75b7bff231e4df270a82cdc1f6badd17dea4b",
"settlementId":"op1",
"userBondDetailsId":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op1",
"fromAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"toAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"tokenId":"bond1",
"quantity":2,
"status":"APPROVED",
"orderId":"op1",
"redeemPrice":1,
"purchasedPrice":11,
"interestEarned":0
},
{
"tokenName":"bond",
"assetType":"otokenApproval",
"id":"otokenApproval~fdf28b2d271ac9c0fbd94a2dedbf365728c77795f3e931e5a4a2dcf48039a989",
"settlementId":"op3",
"userBondDetailsId":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op3",
"fromAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"toAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"tokenId":"bond1",
"quantity":1,
"status":"APPROVED",
"orderId":"op3",
"redeemPrice":11,
"purchasedPrice":11,
"interestEarned":0
}
]
-
getTokenById
- Nome do método original:
getTokenById
- Esse método GET retornará um objeto de token se o token estiver presente no banco de dados de estado. Para NFTs fracionários, a lista de proprietários também é retornada. Esse método só pode ser chamado por um
Token Admin
do chaincode ou do proprietário do token.
- Consulta:
/getTokenById?tokenId={{bc-token-id}}
- Parâmetros:
tokenId: string
– O ID do token a ser obtido.
- Exemplo de valor de retorno:
[{
"tokenMetadata":{
"ISIN":"ISIN value",
"Segment":"Segment value",
"Issuer":"Issuer value",
"FaceValue":10,
"IssueSize":999,
"CouponRate":10,
"InterestPaymentType":"simple",
"InterestFrequency":"monthly",
"IssueDate":"2023-03-28T15:16:36.000Z",
"MaturityDate":"2023-03-28T15:16:36.000Z"
},
"assetType":"otoken",
"events":true,
"tokenId":"bond1",
"tokenName":"bond",
"tokenDesc":"tokenDesc value",
"tokenStandard":"erc1155+",
"tokenType":"nonfungible",
"tokenUnit":"fractional",
"behaviors":[
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles":{
"minter_role_name":"minter",
"burner_role_name":"burner"
},
"mintable":{
"max_mint_quantity":0
},
"quantity":100,
"createdBy":"oaccount~276bcf1324b1ad1e493e22432db3b39f7a4b9bb17b8525c0391ea3ba36138e00",
"creationDate":"2024-12-02T12:42:09.000Z",
"divisible":{
"decimal":0
},
"isBurned":false,
"isLocked":false,
"tokenUri":"tokenUri value",
"status":"posted"
}
]
-
getTokenHistory
- Nome do método original:
getTokenHistory
- Este método GET retorna o histórico de um ID de token especificado.
- Consulta:
/getTokenHistory?tokenId={{bc-token-id}}
- Parâmetros:
tokenId: string
– O ID do token.
- Retorna:
- Em caso de sucesso, um array JSON que contém o histórico de token.
- Exemplo de valor de retorno:
[{
"tokenMetadata":{
"ISIN":"ISIN value",
"Segment":"Segment value",
"Issuer":"Issuer value",
"FaceValue":10,
"IssueSize":999,
"CouponRate":10,
"InterestPaymentType":"simple",
"InterestFrequency":"monthly",
"IssueDate":"2023-03-28T15:16:36.000Z",
"MaturityDate":"2023-03-28T15:16:36.000Z"
},
"assetType":"otoken",
"events":true,
"tokenId":"bond1",
"tokenName":"bond",
"tokenDesc":"tokenDesc value",
"tokenStandard":"erc1155+",
"tokenType":"nonfungible",
"tokenUnit":"fractional",
"behaviors":[
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles":{
"minter_role_name":"minter",
"burner_role_name":"burner"
},
"mintable":{
"max_mint_quantity":0
},
"quantity":100,
"createdBy":"oaccount~276bcf1324b1ad1e493e22432db3b39f7a4b9bb17b8525c0391ea3ba36138e00",
"creationDate":"2024-12-02T12:42:09.000Z",
"divisible":{
"decimal":0
},
"isBurned":false,
"isLocked":false,
"tokenUri":"tokenUri value",
"status":"posted"
}
]
-
getUsersByRole
- Nome do método original:
getUsersByRole
- Esse método retorna uma lista de todos os usuários para uma atribuição e um token especificados. Este método pode ser chamado somente por um
Token Admin
do chaincode.
- Consulta:
/getUsersByRole?role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Parâmetros:
role: string
– O nome da função a ser pesquisada.
tokenDetail: JSON
– Para tokens fungíveis, o ID do token. Para tokens não fungíveis, o nome do token obrigatório.
- Exemplo de valor de retorno:
{
"users": [
{
"accountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
"orgId": "appdev",
"userId": "user2"
},
{
"accountId": "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b",
"orgId": "appdev",
"userId": "user1"
}
]
}
-
init
- Nome do método original:
init
- Esse método POST é chamado quando o chaincode é instanciado. Cada
Token Admin
é identificado pelas informações userId
e orgId
no parâmetro adminList
. O userId
é o nome do usuário ou o ID do e-mail do proprietário da instância ou do usuário que está conectado à instância. O orgId
é o ID do provedor de serviços de associação (MSP) do usuário na organização de rede atual. O parâmetro adminList
é obrigatório na primeira vez que você implanta o chaincode. Se você estiver atualizando o chaincode, passe uma lista vazia ([]
). Se você for o usuário que implantou inicialmente o chaincode, também poderá especificar novos administradores no parâmetro adminList
quando estiver fazendo upgrade do chaincode. Qualquer outra informação no parâmetro adminList
é ignorada durante os upgrades.
- Payload:
{
"adminList": "[{\"orgId\":\"{{bc-org-id}}\",\"userId\":\"{{bc-user-id}}\"}]"
}
- Parâmetros:
adminList array
– Um array de informações {orgId, userId}
que especifica a lista de administradores de token. O array adminList
é um parâmetro obrigatório.
- Retorna:
- Em caso de sucesso, uma mensagem sem payload.
- Exemplo de valor de retorno:
{
}
-
isInRole
- Nome do método original:
isInRole
- Este método GET retorna um valor booliano para indicar se um usuário tem uma atribuição especificada. Tokens não fungíveis são especificados pelo nome do token. Esse método só pode ser chamado por um
Token Admin
do chaincode ou pelo Account Owner
da conta. O usuário especificado deve ter uma conta de token associada ao token fungível ou uma conta de token não fungível para atribuições NFT. A atribuição especificada deve existir no arquivo de especificação do token.
- Consulta:
/isInRole?orgId={{bc-org-id}}&userId={{bc-user-id}}&role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Parâmetros:
- Exemplo de valor de retorno:
{
"result": true,
"msg": "Account Id oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: idcqa) has minter role"
}
-
isTokenAdmin
- Nome do método original:
isTokenAdmin
- Esse método GET retornará o valor booliano
true
se o chamador da função for Token Admin
; caso contrário, ele retornará false
. Este método pode ser chamado somente por um Token Admin
do chaincode.
/isTokenAdmin?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Retorna:
- O método retornará
true
se o chamador for Token Admin
; caso contrário, retornará false
.
- Exemplo de valor de retorno:
{"result": true}
-
mintBatch
- Nome do método original:
mintBatch
- Este método POST cria (mints) vários tokens em uma operação em lote. Este método cria apenas tokens fungíveis ou tokens fracionários não fungíveis.
Para tokens fungíveis, se a função de minter for definida no arquivo de especificação, qualquer usuário com a função de minter poderá chamar esse método. Caso contrário, qualquer usuário poderá usar esse método para gerar tokens. Você não poderá cunhar mais do que a propriedade max_mint_quantity
do token, se essa propriedade tiver sido especificada quando o token foi criado ou atualizado.
Para tokens não fungíveis, se a função de minter for definida no arquivo de especificação, qualquer usuário com a função de minter poderá chamar esse método. Caso contrário, qualquer usuário poderá usar esse método para gerar tokens. Além disso, o chamador também deve ser o criador do token. Não há limite superior para a quantidade de tokens fracionários não fungíveis que podem ser cunhados.
Você não pode usar esse método para gerar um token não fungível inteiro.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"sameOrgEndorser": true
}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
tokenIds: string[]
– A lista de IDs de token para os tokens de mint.
quantity: number[]
– A lista de quantidades de tokens para mint, correspondente ao array do ID do token.
- Retorna:
- Em caso de sucesso, um objeto JSON que inclui detalhes sobre os tokens cunhados.
- Exemplo de valor de retorno:
{
"msg": "Successfully minted batch of tokens for User-Account-Id ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38 (Org-Id: appdev, User-Id: idcqa).",
"details": [
{
"msg": "Successfully minted 100 tokens of fractional tokenId: plot55 to Org-Id: appdev, User-Id: idcqa"
},
{
"msg": "Successfully minted 100 tokens of tokenId: loyalty to Token-Account-Id oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e"
}
]
}
-
ownerOf
- Nome do método original:
ownerOf
- Este método GET retorna o ID da conta, o ID da organização e o ID do usuário do proprietário do ID do token especificado. Qualquer um pode chamar esse método.
- Consulta:
/ownerOf?tokenId={{bc-token-id}}
- Parâmetros:
tokenId: string
– O ID do token.
- Exemplo de valor de retorno:
[
{
"accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
"orgId": "Org1MSP",
"userId": "admin"
},
{
"accountId": "oaccount~74108eca702bab6d8548e740254f2cc7955d886885251d52d065042172a59db0",
"orgId": "Org1MSP",
"userId": "user"
}
]
-
payInterest
- Nome do método original:
ownerOf
- Esse método POST só pode ser chamado pelo criador ou administrador do token para pagar os juros ganhos no token do título. Esse método só poderá ser chamado se a frequência de juros do token for mensal, trimestral ou anual. Os juros não podem ser pagos se a frequência dos juros estiver no vencimento. Os juros são calculados pelo chaincode com base na taxa de cupom do token. A operação de compra transfere tokens CBDC da conta do chamador para a conta do proprietário do título. Por causa disso, esse método deve ser executado no contexto de uma transação atômica. O método também verifica o processo de transferência, garantindo que o chaincode CBDC apropriado seja chamado com os
orgId
e userId
corretos para a transferência. O orgId
e o userId
devem corresponder ao proprietário do token, e o valor de transferência do token CBDC deve ser igual aos juros calculados pelo código de cadeia de títulos.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenId": "{{bc-token-id}}",
"orderId": "orderId value",
"CBDCTokenId": "CBDCTokenId value",
"CBDCFromOrgId": "CBDCFromOrgId value",
"CBDCFromUserId": "CBDCFromUserId value",
"CBDCQuantity": 0,
"CBDCRemark": "{\\\"category\\\":\\\"category value\\\",\\\"description\\\":\\\"description value\\\"}",
"endorsers": {{endorsers}}
}
- Parâmetros:
orgId: string
– O ID do provedor de serviços de associação (MSP) do usuário.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
tokenId: string
– O ID do token.
orderId: string
– O ID da ordem da operação.
CBDCTokenId: string
– O ID do token no chaincode do CBDC.
CBDCOrgId: string
– O ID do MSP do usuário no chaincode do CBDC.
CBDCUserId: string
– O nome do usuário ou o ID do e-mail do usuário no chaincode do CBDC.
CBDCQuantity: string
– A quantidade de tokens a serem transferidos no chaincode do CBDC.
CBDCRemark: string
– Uma observação para a transferência no chaincode do CBDC, que deve estar no formato mostrado anteriormente.
- Exemplo de valor de retorno:
{
"returnCode":"Success",
"error":"",
"result":{
"transactions":[
{
"channel":"test",
"chaincode":"BondMarketplace",
"txstatus":"Committed",
"prepare":{
"txid":"e969f962df5efda2ea6287380e308cc974efd79dfff3567840ed3844bf936160"
},
"commit":{
"txid":"5544e928d3242291fb39189e8329679a9c81d61d6f72db60ca89135cd20fffef"
},
"rollback":{
}
},
{
"channel":"cbdctest",
"chaincode":"cbdc",
"txstatus":"Committed",
"prepare":{
"txid":"1245885b1a0c7f12c41fa2f2905549b8a5f37ab3a5e094b9dca122cb0611a117"
},
"commit":{
"txid":"3c83e20c7d470cdc9c1b0e2e0ea8d9962d58ada8d1b8f0d2606c8aa1f0ae7741"
},
"rollback":{
}
}
],
"lrc":{
},
"globalStatus":"Success",
"globalTxid":"761bb7cc-1d66-4645-aeb2-50e4dbd23d83",
"txStartTime":"2024-12-05T12:01:21.881988035Z"
}
}
-
postBondToken
- Nome do método original:
postBondToken
- Esse método POST só pode ser chamado por um criador de token. O método envia o token de título para listagem no mercado. Quando um token é criado, seu status é inicialmente definido como
created
. Esse método atualiza o status para posted
. Os usuários podem executar o método getAllTokensWithFilter
para recuperar todos os NFTs com um status posted
.
- Payload:
{
"tokenId": "{{bc-token-id}}",
"sameOrgEndorser": true
}
- Parâmetros:
tokenId: string
– O ID do token a ser publicado.
- Exemplo de valor de retorno:
{
"isValid":true,
"payload":{
"tokenMetadata":{
"ISIN":"ISIN value",
"Segment":"Segment value",
"Issuer":"Issuer value",
"FaceValue":10,
"IssueSize":999,
"CouponRate":10,
"InterestPaymentType":"simple",
"InterestFrequency":"monthly",
"IssueDate":"2023-03-28T15:16:36.000Z",
"MaturityDate":"2023-03-28T15:16:36.000Z"
},
"assetType":"otoken",
"events":true,
"tokenId":"bond1",
"tokenName":"bond",
"tokenDesc":"tokenDesc value",
"tokenStandard":"erc1155+",
"tokenType":"nonfungible",
"tokenUnit":"fractional",
"behaviors":[
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles":{
"minter_role_name":"minter",
"burner_role_name":"burner"
},
"mintable":{
"max_mint_quantity":0
},
"quantity":100,
"createdBy":"oaccount~276bcf1324b1ad1e493e22432db3b39f7a4b9bb17b8525c0391ea3ba36138e00",
"creationDate":"2024-12-02T12:42:09.000Z",
"divisible":{
"decimal":0
},
"isBurned":false,
"isLocked":false,
"tokenUri":"tokenUri value",
"status":"created"
},
"message":"Successfully updated asset with ID bond1"
}
-
purchaseBondToken
- Nome do método original:
purchaseBondToken
- Este método POST pode ser chamado por qualquer titular de conta para comprar um NFT de títulos listados. A compra transfere o NFT do título da conta do criador para a conta do chamador e transfere tokens CBDC da conta do chamador para a conta do criador. Por causa disso, o método deve ser executado no contexto de uma transação atômica. O método também verifica o processo de transferência, garantindo que o chaincode CBDC apropriado seja chamado com os
orgId
e userId
corretos para a transferência. O orgId
e o userId
devem corresponder ao criador do token, e o valor de transferência do token CBDC deve ser igual ao valor nominal do token do título multiplicado pela quantidade que está sendo comprada.
- Payload:
{
"tokenId": "{{bc-token-id}}",
"quantity": 1,
"orderId": "orderId value",
"additionalFees": 1,
"CBDCTokenId": "CBDCTokenId value",
"CBDCFromOrgId": "CBDCFromOrgId value",
"CBDCFromUserId": "CBDCFromUserId value",
"CBDCQuantity": 0,
"CBDCRemark": "{\\\"category\\\":\\\"category value\\\",\\\"description\\\":\\\"description value\\\"}",
"endorsers": {{endorsers}}
}
- Parâmetros:
tokenId: string
– O ID do token a ser comprado.
orgId: string
– O ID do provedor de serviços de associação (MSP) do usuário.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
settlementId: string
– O ID da liquidação da operação.
CBDCTokenId: string
– O ID do token no chaincode do CBDC.
CBDCOrgId: string
– O ID do MSP do usuário no chaincode do CBDC.
CBDCUserId: string
– O nome do usuário ou o ID do e-mail do usuário no chaincode do CBDC.
CBDCQuantity: string
– A quantidade de tokens a serem transferidos no chaincode do CBDC.
CBDCRemark: string
– Uma observação para a transferência no chaincode do CBDC, que deve estar no formato mostrado anteriormente.
- Exemplo de valor de retorno:
{
"returnCode":"Success",
"error":"",
"result":{
"transactions":[
{
"channel":"test",
"chaincode":"BondMarketplace",
"txstatus":"Committed",
"prepare":{
"txid":"e969f962df5efda2ea6287380e308cc974efd79dfff3567840ed3844bf936160"
},
"commit":{
"txid":"5544e928d3242291fb39189e8329679a9c81d61d6f72db60ca89135cd20fffef"
},
"rollback":{
}
},
{
"channel":"cbdctest",
"chaincode":"cbdc",
"txstatus":"Committed",
"prepare":{
"txid":"1245885b1a0c7f12c41fa2f2905549b8a5f37ab3a5e094b9dca122cb0611a117"
},
"commit":{
"txid":"3c83e20c7d470cdc9c1b0e2e0ea8d9962d58ada8d1b8f0d2606c8aa1f0ae7741"
},
"rollback":{
}
}
],
"lrc":{
},
"globalStatus":"Success",
"globalTxid":"761bb7cc-1d66-4645-aeb2-50e4dbd23d83",
"txStartTime":"2024-12-05T12:01:21.881988035Z"
}
}
-
rejectBondRedemption
- Nome do método original:
rejectBondRedemption
- O criador do token pode chamar esse método POST para rejeitar a solicitação de resgate. Os proprietários de token podem gerar uma solicitação de resgate novamente usando um ID de liquidação diferente.
- Payload:
{
"fromOrgId": "fromOrgId value",
"fromUserId": "fromUserId value",
"settlementId": "settlementId value",
"tokenId": "{{bc-token-id}}",
"endorsers": {{endorsers}}
}
- Parâmetros:
fromOrgId: string
– O ID do provedor de serviços de associação (MSP) do usuário.
fromUserId: string
– O nome de usuário ou o ID de e-mail do usuário.
settlementId: string
– O ID da liquidação da operação de resgate.
tokenId: string
– O ID do token.
- Exemplo de valor de retorno:
{
"status":"success",
"msg":"Successfully rejected the token approval request"
}
-
removeRole
- Nome do método original:
removeRole
- Este método POST remove uma atribuição de um usuário e token especificados. Os tokens fungíveis são especificados pelo ID do token. Tokens não fungíveis são especificados pelo nome do token. Este método pode ser chamado somente por um
Token Admin
do chaincode.
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"role": "role value (for example minter / burner)",
"tokenDetail": "{\"tokenName\":\"tokenName value\"}",
"endorsers": {{endorsers}}
}
- Parâmetros:
- Exemplo de valor de retorno:
{
"msg": "Successfully removed role 'minter' from Account Id: oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b (Org-Id: appdev, User-Id: user1)"
}
-
removeTokenAdmin
- Nome do método original:
removeTokenAdmin
- Este método POST remove um usuário como um
Token Admin
do chaincode. Este método pode ser chamado somente por um Token Admin
do chaincode. Você não pode se remover como um Token Admin
.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"sameOrgEndorser": true
}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Retorna:
- Em caso de êxito, uma mensagem que inclui detalhes do usuário que foi removido como
Token Admin
do chaincode.
- Exemplo de valor de retorno:
{"msg": "Successfully removed Admin (OrgId: appDev, UserId: user1)"}
-
requestBondRedemption
- Nome do método original:
requestBondRedemption
- Este método POST pode ser chamado apenas pelo proprietário do token para apresentar um pedido de resgate de tokens de títulos após o vencimento. Este método também envolve o cálculo do preço de resgate pelo chaincode. As solicitações de resgate só podem ser geradas na quantidade total do token de título que o usuário possui. Os usuários podem gerar várias solicitações de resgate com base em diferentes IDs de liquidação, mas apenas uma pode ser aprovada pelo criador do token.
- Payload:
{
"settlementId": "settlementId value",
"tokenId": "{{bc-token-id}}",
"orderId": "orderId value",
"additionalFees": 1,
"endorsers": {{endorsers}}
}
- Parâmetros:
settlementId: string
– O ID da liquidação da operação de resgate.
tokenId: string
– O ID do token.
orderId: string
– O ID do pedido da operação de compra.
additionalFees: number
– As taxas adicionais para adicionar ao preço de resgate.
- Exemplo de valor de retorno:
{
"tokenName":"bond",
"assetType":"otokenApproval",
"id":"otokenApproval~9e006057ac96ae997e3964531b1a08ad2316555701c7fe9ec7b88e38e20892bf",
"settlementId":"op4",
"userBondDetailsId":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op4",
"fromAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"toAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"tokenId":"bond1",
"quantity":1,
"status":"PENDING",
"orderId":"op4",
"redeemPrice":11
}
-
safeBatchTransferFrom
- Nome do método original:
safeBatchTransferFrom
- Este método POST conclui uma operação em batch que transfere tokens especificados em uma lista de IDs de token de um usuário para outro.
Para NFTs, como o método transfere a propriedade do NFT, o remetente do NFT deve possuir o token.
Para NFTs fracionários, se um usuário (incluindo o criador do token) transferir todos os compartilhamentos que possui, ele perderá a propriedade do token. Se qualquer compartilhamento de um token for transferido para um usuário, esse usuário se tornará automaticamente um dos proprietários do NFT fracionado.
O chamador do método deve ser o remetente especificado.
{
"fromOrgId": "fromOrgId value",
"fromUserId": "fromUserId value",
"toOrgId": "toOrgId value",
"toUserId": "toUserId value",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"endorsers": {{endorsers}}
}
- Parâmetros:
fromOrgId: string
– O ID do provedor de serviços de associação (MSP) do remetente e do proprietário do token na organização atual.
fromUserId: string
– O nome do usuário ou o ID do e-mail do remetente e do proprietário do token.
toOrgId: string
– O ID do prestador de serviço de associação (MSP) do destinatário na organização atual.
toUserId: string
– O nome do usuário ou o ID do e-mail do destinatário.
tokenIds: string[]
– Uma lista de IDs de token para os tokens a serem transferidos.
quantity: number[]
– A lista de quantidades de tokens a serem transferidos, correspondente ao array do ID do token.
- Retorna:
- Com êxito, uma mensagem com detalhes para cada transferência de token.
- Exemplo de valor de retorno:
[
{
"msg": "Successfully transferred NFT token: 'FNFT' of '10' quantity from Account-Id: oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371 (Org-Id: appdev, User-Id: idcqa) to Account-Id: oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446 (Org-Id: appdev, User-Id: user1_minter)"
},
{
"msg": "Successfully transferred 10 FT token: 'FT' from Account-Id: oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e (Org-Id: appdev, User-Id: idcqa) to Account-Id: oaccount~1089ee5122f367ee0ca38c6660298f4b81f199627e4f67f3691c0f628237974c (Org-Id: appdev, User-Id: user1_minter)"
},
{
"msg": "Successfully transferred NFT token: 'NFT' from Account-Id: oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371 (Org-Id: appdev, User-Id: idcqa) to Account-Id: oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446 (Org-Id: appdev, User-Id: user1_minter)"
}
]
-
suspendAccount
- Nome do método original:
suspendAccount
- Este método POST suspende uma conta de token. Este método pode ser chamado somente por um
Token Admin
do chaincode. Depois que uma conta for suspensa, você não poderá concluir nenhuma operação que atualize a conta. Uma conta excluída não pode ser suspensa.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parâmetros:
orgId: string
– O ID do prestador de serviço de associação (MSP) do usuário na organização atual.
userId: string
– O nome de usuário ou o ID de e-mail do usuário.
- Retorna:
- Com êxito, uma representação JSON do status da conta de token.
- Exemplo de valor de retorno:
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "suspended"
}
-
updateBondToken
- Nome do método original:
updateBondToken
- Este método POST atualiza tokens. Cada token definido tem seu próprio método de atualização. Você não pode atualizar metadados de token ou o URI de token de tokens não fungíveis. Esse método só pode ser chamado pelo proprietário do token.
- Payload:
{
"tokenAsset": "{\"tokenId\":\"{{bc-token-id}}\",\"tokenDesc\":\"tokenDesc value\",\"tokenUri\":\"tokenUri value\",\"status\":\"status value\", \"tokenMetadata\":{\"ISIN\":\"ISIN value\",\"Segment\":\"Segment value\",\"Issuer\":\"Issuer value\",\"FaceValue\":999,\"IssueSize\":999,\"CouponRate\":999,\"InterestPaymentType\":\"InterestPaymentType value\",\"InterestFrequency\":\"InterestFrequency value\",\"IssueDate\":\"2023-03-28T15:16:36+00:00\",\"MaturityDate\":\"2023-03-28T15:16:36+00:00\"},\"status\":\"status value\"}",
"sameOrgEndorser": true
}
- Parâmetros:
tokenAsset: <Token Class>
– O ativo de token. As propriedades do ativo são definidas no arquivo de modelo.
- Retorna:
- Com êxito, o ativo de token atualizado no formato JSON.
- Exemplo de Valor de Retorno (NFT Inteiro)
{
"tokenMetadata": {
"ISIN": "ISIN value",
"Segment": "Segment value",
"Issuer": "Issuer value",
"FaceValue": 999,
"IssueSize": 999,
"CouponRate": 999,
"InterestPaymentType": "simple",
"InterestFrequency": "monthly",
"IssueDate": "2023-03-28T15:16:36.000Z",
"MaturityDate": "2023-03-28T15:16:36.000Z"
},
"assetType": "otoken",
"events": false,
"tokenId": "token2",
"tokenName": "bond",
"tokenDesc": "tokenDesc value",
"tokenStandard": "erc1155+",
"tokenType": "nonfungible",
"tokenUnit": "fractional",
"behaviors": [
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles": {
"minter_role_name": "minter",
"burner_role_name": "burner"
},
"mintable": {
"max_mint_quantity": 0
},
"quantity": 10,
"createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43",
"creationDate": "2024-12-03T12:07:24.000Z",
"divisible": {
"decimal": 0
},
"isBurned": false,
"isLocked": false,
"tokenUri": "tokenUri value",
"status": "created"
}
-
URI
- Nome do método original:
URI
- Esse método retorna o URI de um token especificado.
- Consulta:
/URI?tokenId={{bc-token-id}}
- Parâmetros:
tokenId: string
– O ID do token.
- Exemplo de valor de retorno:
{
"tokenUri": "example.com"
}