-
activateAccount
- Nombre del método original:
activateAccount
- Este método POST activa una cuenta de token. Este método solo puede ser llamado por un administrador o propietario de cuenta. No se pueden activar las cuentas suprimidas.
- Carga Útil:
{
"tokenId": "{{bc-token-id}}",
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parámetros:
tokenId: string
: ID del token.
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Devuelve:
- Una representación JSON del objeto de estado de cuenta para la cuenta de token especificada.
- Ejemplo de Valor de Devolución:
{
"assetType": "oaccountStatus",
"status_id": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"account_id": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "active"
}
-
addTokenAdmin
- Nombre del método original:
addTokenAdmin
- Este método POST agrega otros administradores al código de cadena de token. Este método solo puede ser llamado por el administrador de tokens del código de cadenas.
- Carga Útil:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Devuelve:
- Cuando se realiza correctamente, un mensaje que incluye detalles del usuario que se agregó como
Token Admin
del código de cadenas.
- Ejemplo de Valor de Devolución:
{
"msg": "Successfully added Admin (OrgId: appDev, UserId: user1)"
}
-
addRole
- Nombre del método original:
addRole
- Este método POST agrega un rol a un usuario y token especificados. Este método solo puede ser llamado por
Token Admin
del código de cadenas. Los tokens no fungibles se especifican mediante el nombre del token. El usuario especificado debe tener una cuenta de token no fungible. El rol especificado debe existir en el archivo de especificación para el token.
- Carga Útil:
{
"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:
- Devuelve:
- Si se realiza correctamente, un mensaje con los detalles de la cuenta.
- Ejemplo de Valor de Devolución:
{
"msg": "Successfully added role 'minter' to Account Id: oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: idcqa)"
}
-
approveBondRedemption
- Nombre del método original:
approveBondRedemption
- Este método POST solo puede ser llamado por el creador del token para aprobar una solicitud para el canje de tokens de bonos. La operación de aprobación transfiere el bono NFT de la cuenta del propietario (el usuario que presentó la solicitud) a la cuenta del creador, y transfiere tokens CBDC del creador del bono a la cuenta del propietario. Debido a esto, este método se debe ejecutar en el contexto de una transacción atómica. El método también verifica el proceso de transferencia, lo que garantiza que se llame al código de cadena CBDC adecuado con los valores
orgId
y userId
correctos para la transferencia. orgId
y userId
deben corresponder a la cuenta del propietario del token que ha generado la solicitud de canje, y el valor de transferencia del token de CBDC debe ser igual al precio de canje calculado que ha calculado el código de cadena al generar la solicitud de canje.
- Carga Útil:
{
"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
: ID del proveedor de servicios de miembros (MSP) del usuario.
fromUserId: string
: nombre de usuario o ID de correo electrónico del usuario.
settlementId: string
: ID de liquidación para la operación de canje.
tokenId: string
: ID del token.
CBDCTokenId: string
: ID del token en el código de cadena CBDC.
CBDCOrgId: string
: ID de MSP del usuario en el código de cadenas CBDC.
CBDCUserId: string
: nombre de usuario o ID de correo electrónico del usuario en el código de cadenas CBDC.
CBDCQuantity: string
: cantidad de tokens que se transferirán en el código de cadena CBDC.
CBDCRemark: string
: comentario para la transferencia en el código de cadena CBDC, que debe tener el formato mostrado anteriormente.
- Ejemplo de Valor de Devolución:
{
"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
- Nombre del método original:
balanceOfBatch
- Este método GET completa una operación por lotes que obtiene el saldo de las cuentas de token. Los detalles de la cuenta se especifican en tres listas separadas de ID de organización, ID de usuario e ID de token. Este método solo lo puede llamar un
Token Admin
del código de cadenas o los propietarios de la cuenta. Los propietarios de cuentas solo pueden ver los detalles de saldo de las cuentas de su propiedad.
- Consulta:
/balanceOfBatch?orgIds=["{{bc-org-id}}"]&userIds=["{{bc-user-id}}"]&tokenIds=["{{bc-token-id}}"]
- Parámetros:
orgIds: string[]
: lista de los ID de proveedor de servicios de afiliación (MSP) de la organización actual.
userIds: string[]
: lista del nombre de usuario o los ID de correo electrónico.
tokenIds: string[]
: lista de los ID de token.
- Ejemplo de Valor de Devolución:
En el siguiente ejemplo, el ID de token FNFT
representa un token no fungible fraccional y el ID de token FT
representa un token fungible.
[
{
"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
- Nombre del método original:
batchTransferFrom
- Este método POST completa una operación por lotes que transfiere tokens especificados en una lista de ID de token de un usuario a otro usuario.
- Carga Útil:
{
"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
: ID del proveedor de servicios de membresía (MSP) del remitente y el propietario del token en la organización actual.
fromUserId: string
: nombre de usuario o ID de correo electrónico del remitente y propietario del token.
toOrgId: string
: ID del proveedor de servicios de membresía (MSP) del receptor en la organización actual.
toUserId: string
: nombre de usuario o ID de correo electrónico del destinatario.
tokenIds: string[]
: lista de ID de token para los tokens que se van a transferir.
quantity: number[]
: lista de cantidades de tokens que se transferirán, correspondiente a la matriz de ID de token.
- Devuelve:
- Si se realiza correctamente, un mensaje con detalles para cada transferencia de token.
- Ejemplo de Valor de Devolución:
[
{
"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
- Nombre del método original:
burnBatch
- Este método POST desactiva o quema los tokens especificados. Cualquier usuario con el rol de quemador puede llamar a este método.
- Carga Útil:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"sameOrgEndorser": true
}
- Parámetros:
orgId: string
: ID del proveedor de servicios de membresía (MSP) en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico.
tokenIds: string[]
: lista de los ID de token que se van a grabar
quantity: number[]
: lista de cantidades de tokens que se van a grabar, correspondiente a la matriz de ID de token.
- Devuelve:
- En caso de éxito, un mensaje con detalles sobre las operaciones de grabación.
- Ejemplo de Valor de Devolución:
[
{
"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
- Nombre del método original:
createAccount
- Este método POST crea una cuenta para un usuario especificado y cuentas de token asociadas para tokens. Se debe crear una cuenta para cualquier usuario que tenga tokens en cualquier momento. La cuenta de usuario realiza un seguimiento de la cuenta NFT y las cuentas de token fungibles que tiene un usuario. Los usuarios deben tener cuentas en la red para completar las operaciones relacionadas con tokens. Este método solo puede ser llamado por
Token Admin
del código de cadenas.
Una cuenta de usuario tiene un ID único, formado por un hash SHA-256 del parámetro orgId
y el parámetro userId
.
Un usuario puede tener varias cuentas de token fungibles con ID de cuenta únicos. Los ID de cuenta de token fungible están formados por un hash SHA-256 del parámetro orgId
, el parámetro userId
, la cadena constante ft
separada por el símbolo tilde (~
) y un número de contador que significa el índice de la cuenta fungible que se está creando separado por el símbolo tilde (~
).
Un usuario solo puede tener una cuenta de token no fungible. Los ID de cuenta de token no fungibles son únicos y están formados por un hash SHA-256 del parámetro orgId
, el parámetro userId
y la cadena constante nft
separados por el símbolo tilde (~
). Todos los tokens no fungibles que posee un usuario, ya sean completos o fraccionales, están vinculados a esta cuenta.
- Carga Útil:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"ftAccount": true,
"nftAccount": true,
"endorsers": {{endorsers}}
}
- Parámetros:
orgId
: ID del proveedor de servicios de afiliación (MSP) del usuario para el que crear la cuenta. El ID debe comenzar con un carácter alfanumérico y puede incluir letras, números y caracteres especiales, como guiones bajos (_), puntos (.), signos (@) y guiones (-).
userId
: nombre de usuario o ID de correo electrónico del usuario. El ID debe comenzar con un carácter alfanumérico y puede incluir letras, números y caracteres especiales, como guiones bajos (_), puntos (.), signos (@) y guiones (-).
ftAccount: boolean
: si es verdadero, se crea una cuenta de token fungible y se asocia a la cuenta de usuario.
nftAccount: boolean
: si es true, se crea una cuenta de token no fungible y se asocia a la cuenta de usuario.
- Devuelve:
- Si se realiza correctamente, se crea un objeto JSON de la cuenta.
- Ejemplo de Valor de Devolución:
{
"assetType": "ouaccount",
"accountId": "ouaccount~cf20877546f52687f387e7c91d88b9722c97e1a456cc0484f40c747f7804feae",
"userId": "user1",
"orgId": "appdev",
"totalAccounts": 2,
"totalFtAccounts": 1,
"associatedFtAccounts": [
{
"accountId": "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b",
"tokenId": ""
}
],
"associatedNftAccount": "oaccount~73c3e835dac6d0a56ca9d8def08269f83cefd59b9d297fe2cdc5a9083828fa58"
}
-
createAccountWithEnrollment
- Nombre del método original:
createAccountWithEnrollment
- Este método POST crea una inscripción para un usuario en el proxy REST de la instancia y crea una cuenta NFT en el código de cadenas del mercado de bonos.
- Carga Útil:
{
"orgId": "orgId value",
"userId": "userId value"
}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Devuelve:
- Si se realiza correctamente, se crea un objeto JSON de la cuenta.
- Ejemplo de Valor de Devolución:
{
"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
- Nombre del método original:
createBondToken
- Este método POST crea tokens. Cada token definido tiene su propio método de creación. Para tokens no fungibles, el emisor de llamada de este método se convierte en el propietario de la NFT. Si se define el comportamiento
roles
en la propiedad behaviors
del modelo de token y se especifica minter_role_name
, la cuenta del emisor de llamada debe tener el rol menor.
- Carga Útil:
{
"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>
: activo de token. Las propiedades del activo se definen en el archivo de modelo.
quantity: number
: número de tokens que acuñar. El único valor soportado para este parámetro es 1
.
- Devuelve:
- Si se realiza correctamente, se crea un objeto JSON de la cuenta.
- Ejemplo de Valor de Devolución:
{
"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
- Nombre del método original:
createIDCSUser
- Este método POST crea un usuario de Identity Cloud Service en el arrendamiento especificado por la URL en el archivo
terraform.tfvars
y asigna el usuario al grupo de usuarios especificado.
- Carga Útil:
{
"userName": "userName value",
"firstName": "firstName value",
"lastName": "lastName value",
"email": "email value",
"groupName": "groupName value"
}
- Parámetros:
userName: string
: ID del usuario.
firstName: string
: nombre del usuario.
lastName: string
: apellido del usuario.
email: string
: dirección de correo electrónico del usuario.
groupName: string
: nombre del grupo de Identity Cloud Service que se va a asignar al usuario.
- Ejemplo de Valor de Devolución:
{
"status": "Success",
"msg": "User user1 is created and assigned to the group BOND_ADMIN"
}
-
createTokenAccount
- Nombre del método original:
createTokenAccount
- Este método POST crea una cuenta de token fungible o no fungible para asociarla a una cuenta de usuario.
Un usuario puede tener varias cuentas de token fungibles con ID de cuenta únicos. Los ID de cuenta de token fungible están formados por un hash SHA-256 del parámetro orgId
, el parámetro userId
, la cadena constante ft
separada por el símbolo tilde (~
) y un número de contador que significa el índice de la cuenta fungible que se está creando separado por el símbolo tilde (~
).
Un usuario solo puede tener una cuenta de token no fungible. Los ID de cuenta de token no fungibles son únicos y están formados por un hash SHA-256 del parámetro orgId
, el parámetro userId
y la cadena constante nft
separados por el símbolo tilde (~
). Todos los tokens no fungibles que posee un usuario, ya sean completos o fraccionales, están vinculados a esta cuenta.
Este método solo puede ser llamado por Token Admin
del código de cadenas.
- Carga Útil:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenType": "nonfungible",
"endorsers": {{endorsers}}
}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
tokenType: TokenType
: tipo de cuenta de token que se va a crear. Los únicos tipos de token soportados son nonfungible
y fungible
.
- Devuelve:
- Si se realiza correctamente, se crea un objeto JSON de la cuenta de token.
- Ejemplo de Valor de Devolución:
{
"assetType": "ouaccount",
"accountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc",
"userId": "user2",
"orgId": "appdev",
"totalAccounts": 1,
"totalFtAccounts": 1,
"associatedFtAccounts": [
{
"accountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
"tokenId": ""
}
],
"associatedNftAccount": ""
}
-
createUserAccount
- Nombre del método original:
createUserAccount
- Este método POST crea una cuenta para un usuario especificado. Se debe crear una cuenta para cualquier usuario que tenga tokens en cualquier momento. La cuenta de usuario realiza un seguimiento de la cuenta NFT y las cuentas de token fungibles que tiene un usuario. Los usuarios deben tener cuentas en la red para completar las operaciones relacionadas con tokens.
Un ID de cuenta es un hash SHA-256 del parámetro orgId
y del parámetro userId
. Este método solo puede ser llamado por Token Admin
del código de cadenas.
- Carga Útil:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Devuelve:
- Si se realiza correctamente, se crea un objeto JSON de la cuenta de usuario.
- Ejemplo de Valor de Devolución:
{
"assetType": "ouaccount",
"accountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc",
"userId": "user2",
"orgId": "appdev",
"totalAccounts": 0,
"totalFtAccounts": 0,
"associatedFtAccounts": [],
"associatedNftAccount": ""
}
-
deleteAccount
- Nombre del método original:
deleteAccount
- Este método POST suprime una cuenta de token. Este método solo puede ser llamado por
Token Admin
del código de cadenas. Este método devuelve un error si no se encuentra un valor accountStatus
para la cuenta en el libro mayor.
- Carga Útil:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Devuelve:
- Si se realiza correctamente, una representación JSON del estado de la cuenta de token.
- Ejemplo de Valor de Devolución:
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "deleted"
}
-
getAccount
- Nombre del método original:
getAccount
- Este método GET devuelve los detalles de la cuenta de token para un usuario especificado. Este método solo puede ser llamado por un
Token Admin
del código de cadenas o el Account Owner
de la cuenta.
- Consulta:
/getAccount?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
tokenId?: string
: para una cuenta de token no fungible, una cadena vacía. Para una cuenta de token fungible, el ID de token.
- Devuelve:
- Si se realiza correctamente, un objeto JSON que incluye detalles de cuenta de token.
- Ejemplo de Valor de Devolución
{
"assetType": "oaccount",
"accountId": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
"userId": "user2",
"orgId": "AppBldFFFFMay22",
"tokenType": "nonfungible",
"noOfNfts": 3
}
-
getAccountBondSummary
- Nombre del método original:
getAccountBondSummary
- Este método GET devuelve un resumen de cuenta para el usuario especificado, incluidos los detalles de los tokens comprados o canjeados y sus precios de compra y canje.
- Consulta:
/getAccount?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Devuelve:
- Si se realiza correctamente, un objeto JSON que incluye el resumen de cuenta de token.
- Ejemplo de Valor de Devolución
[
{
"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
- Nombre del método original:
getAccountBondSummaryWithPagination
- Este método GET devuelve un resumen de cuenta para el usuario especificado, incluidos los detalles de los tokens comprados o canjeados y sus precios de compra y canje. Este método puede devolver resultados con paginación basada en valores de tamaño de página y marcador, y también filtrada por hora de inicio y hora de finalización.
- Consulta:
/getAccountBondSummary?orgId={{bc-org-id}}&userId={{bc-user-id}}&pageSize=1&bookmark={{bookmark}}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
pageSize: number
: tamaño de página del resultado devuelto.
bookmark: string
: marcador del resultado devuelto.
- Devuelve:
- Si se realiza correctamente, un objeto JSON que incluye el resumen de cuenta de token.
- Ejemplo de Valor de Devolución
[
{
"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
- Nombre del método original:
getAccountDetailsByUser
- Este método GET devuelve un resumen de cuenta para un usuario especificado y detalles de tokens fungibles y no fungibles que están asociados con el usuario. Este método solo puede ser llamado por un
Token Admin
del código de cadenas o el Account Owner
de la cuenta.
- Consulta:
/getAccountDetailsByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Devuelve:
- Cuando se realiza correctamente, un objeto de cuenta JSON que incluye un resumen de cuenta para el usuario especificado y detalles de tokens fungibles y no fungibles asociados con el usuario. Para tokens fraccionales no fungibles, la propiedad
tokenShare
de la sección associatedNFTs
muestra el recurso compartido que posee el usuario.
- Ejemplo de Valor de Devolución:
{
"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
- Nombre del método original:
getAccountStatus
- Este método GET recupera el estado actual de la cuenta de token. Este método lo puede llamar el
Token Admin
del código de cadenas o el propietario de la cuenta de token.
- Consulta:
/getAccountStatus?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Devuelve:
- Si se realiza correctamente, una representación JSON del estado de la cuenta de token.
- Ejemplo de Valor de Devolución:
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "active"
}
-
getAccountStatusHistory
- Nombre del método original:
getAccountStatusHistory
- Este método GET recupera el historial del estado de la cuenta. Este método lo puede llamar el
Token Admin
del código de cadenas o el propietario de la cuenta de token.
- Consulta:
/getAccountStatusHistory?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Devuelve:
- Si se realiza correctamente, el historial de estado de la cuenta en formato JSON.
- Ejemplo de Valor de Devolución:
[
{
"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
- Nombre del método original:
getAccountTransactionHistory
- Este método GET devuelve el historial de transacciones de la cuenta. Este método solo lo puede llamar un
Token Admin
del código de cadenas o el propietario de la cuenta.
/getAccountTransactionHistory?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Ejemplo de Valor de Devolución:
[
{
"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
- Nombre del método original:
getAccountsByRole
- Este método GET devuelve una lista de todos los ID de cuenta para un rol y token especificados.
- Consulta:
/getAccountsByRole?role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Parámetros:
role: string
: nombre del rol que se va a buscar.
tokenDetail: JSON
: para tokens fungibles, el ID de token. Para tokens no fungibles, el nombre de token necesario.
- Ejemplo de Valor de Devolución:
{
"accounts": [
"oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
"oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b"
]
}
-
getAllAccounts
- Nombre del método original:
getAllAccounts
- Este método GET devuelve detalles de todas las cuentas de usuario. Este método solo puede ser llamado por
Token Admin
del código de cadenas.
- Consulta:
/getAllAccounts
- Parámetros:
- Devuelve:
- En caso de éxito, una matriz JSON de todas las cuentas.
- Ejemplo de Valor de Devolución:
[
{
"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
- Nombre del método original:
getAllTokenAdmins
- Este método GET devuelve una lista de todos los usuarios que son
Token Admin
del código de cadenas. Este método solo puede ser llamado por Token Admin
del código de cadenas.
- Consulta:
/getAllTokenAdmins
- Parámetros:
- Devuelve:
- Cuando se realiza correctamente, una matriz
admins
en formato JSON que contiene objetos orgId
y userId
.
- Ejemplo de Valor de Devolución:
{
"admins": [
{
"orgId": "appdev",
"userId": "user2"
},
{
"orgId": "appdev",
"userId": "user1"
}
]
}
-
getAllTokens
- Nombre del método original:
getAllTokens
- Este método devuelve todos los activos de token que se guardan en la base de datos de estado. Este método solo puede ser llamado por
Token Admin
del código de cadenas. Este método utiliza consultas enriquecidas SQL de Berkeley DB y solo se puede llamar cuando se conecta a la red remota de Oracle Blockchain Platform.
/getAllTokens
- Parámetros:
- Devuelve:
- Lista de todos los activos de token en formato JSON.
- Ejemplo de Valor de Devolución:
[{
"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
- Nombre del método original:
getAllTokensByUser
- Este método GET devuelve todos los activos de token que son propiedad de un usuario especificado. Este método utiliza consultas enriquecidas SQL de Berkeley DB y solo se puede llamar cuando se conecta a la red remota de Oracle Blockchain Platform. Este método solo lo puede llamar un
Token Admin
del código de cadenas o el propietario de la cuenta.
- Consulta:
/getAllTokensByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Ejemplo de Valor de Devolución:
[{
"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
- Nombre del método original:
getAllTokensWithFilters
- El administrador puede llamar a este método GET para recuperar todos los tokens filtrados por estado.
- Consulta:
/getAllTokensWithFilters?status=status&pageSize=pageSize&bookmark=bookmark
- Parámetros:
status: string
: estado del token, que puede ser CREATED
o POSTED
.
pageSize: number
: tamaño de página del resultado devuelto.
bookmark: string
: marcador del resultado devuelto.
- Ejemplo de Valor de Devolución:
[{
"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
- Nombre del método original:
getTokenApprovalRequestByUser
- Cualquier titular de cuenta puede llamar a este método GET para obtener los detalles de todas las solicitudes de aprobación de tokens (solicitudes de canje) que ha realizado.
- Consulta:
/getTokenApprovalRequestByUser?status=status value
- Parámetros:
status: string
: estado de la solicitud, que puede ser PENDING
, REJECTED
o APPROVED
.
- Ejemplo de Valor de Devolución:
[
{
"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
- Nombre del método original:
getTokenApprovalRequestByUser
- Cualquier titular de cuenta puede llamar a este método GET para obtener los detalles de todas las solicitudes de aprobación de tokens (solicitudes de canje) que ha realizado.
- Consulta:
/getTokenApprovalRequestForUserByStatus?status=status value
- Parámetros:
status: string
: estado de la solicitud, que puede ser PENDING
, REJECTED
o APPROVED
.
- Ejemplo de Valor de Devolución:
[
{
"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
- Nombre del método original:
getTokenById
- Este método GET devuelve un objeto de token si el token está presente en la base de datos de estado. Para las NFT fraccionadas, también se devuelve la lista de propietarios. Este método solo lo puede llamar un
Token Admin
del código de cadenas o el propietario del token.
- Consulta:
/getTokenById?tokenId={{bc-token-id}}
- Parámetros:
tokenId: string
: ID del token que se va a obtener.
- Ejemplo de Valor de Devolución:
[{
"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
- Nombre del método original:
getTokenHistory
- Este método GET devuelve el historial de un ID de token especificado.
- Consulta:
/getTokenHistory?tokenId={{bc-token-id}}
- Parámetros:
tokenId: string
: ID del token.
- Devuelve:
- Si se realiza correctamente, una matriz JSON que contiene el historial de tokens.
- Ejemplo de Valor de Devolución:
[{
"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
- Nombre del método original:
getUsersByRole
- Este método devuelve una lista de todos los usuarios para un rol y token especificados. Este método solo puede ser llamado por
Token Admin
del código de cadenas.
- Consulta:
/getUsersByRole?role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Parámetros:
role: string
: nombre del rol que se va a buscar.
tokenDetail: JSON
: para tokens fungibles, el ID de token. Para tokens no fungibles, el nombre de token necesario.
- Ejemplo de Valor de Devolución:
{
"users": [
{
"accountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
"orgId": "appdev",
"userId": "user2"
},
{
"accountId": "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b",
"orgId": "appdev",
"userId": "user1"
}
]
}
-
init
- Nombre del método original:
init
- Se llama a este método POST cuando se crea una instancia del código de cadenas. Cada
Token Admin
se identifica mediante la información userId
y orgId
en el parámetro adminList
. userId
es el nombre de usuario o el ID de correo electrónico del propietario de la instancia o el usuario que está conectado a la instancia. orgId
es el ID del proveedor de servicios de miembros (MSP) del usuario en la organización de red actual. El parámetro adminList
es obligatorio la primera vez que despliegue el código de cadenas. Si está actualizando el código de cadenas, transfiera una lista vacía ([]
). Si es el usuario que desplegó inicialmente el código de cadenas, también puede especificar nuevos administradores en el parámetro adminList
al actualizar el código de cadenas. Cualquier otra información del parámetro adminList
se ignora durante las actualizaciones.
- Carga Útil:
{
"adminList": "[{\"orgId\":\"{{bc-org-id}}\",\"userId\":\"{{bc-user-id}}\"}]"
}
- Parámetros:
adminList array
: matriz de información {orgId, userId}
que especifica la lista de administradores de token. La matriz adminList
es un parámetro obligatorio.
- Devuelve:
- Si se realiza correctamente, un mensaje sin carga útil.
- Ejemplo de Valor de Devolución:
{
}
-
isInRole
- Nombre del método original:
isInRole
- Este método GET devuelve un valor booleano para indicar si un usuario tiene un rol especificado. Los tokens no fungibles se especifican mediante el nombre del token. Este método solo puede ser llamado por un
Token Admin
del código de cadenas o el Account Owner
de la cuenta. El usuario especificado debe tener una cuenta de token asociada con el token fungible o una cuenta de token no fungible para los roles NFT. El rol especificado debe existir en el archivo de especificación para el token.
- Consulta:
/isInRole?orgId={{bc-org-id}}&userId={{bc-user-id}}&role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Parámetros:
- Ejemplo de Valor de Devolución:
{
"result": true,
"msg": "Account Id oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: idcqa) has minter role"
}
-
isTokenAdmin
- Nombre del método original:
isTokenAdmin
- Este método GET devuelve el valor booleano
true
si el emisor de llamada de la función es Token Admin
; de lo contrario, devuelve false
. Este método solo puede ser llamado por Token Admin
del código de cadenas.
/isTokenAdmin?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Devuelve:
- El método devuelve
true
si el emisor de llamada es Token Admin
; de lo contrario, devuelve false
.
- Ejemplo de Valor de Devolución:
{"result": true}
-
mintBatch
- Nombre del método original:
mintBatch
- Este método POST crea (minta) varios tokens en una operación por lotes. Este método crea solo tokens fungibles o tokens fraccionales no fungibles.
En el caso de tokens fungibles, si el rol minter está definido en el archivo de especificación, cualquier usuario con el rol minter puede llamar a este método. Si no es así, cualquier usuario puede utilizar este método para acuñar tokens. No puede importar más que la propiedad max_mint_quantity
del token si esa propiedad se especificó cuando se creó o actualizó el token.
Para los tokens no fungibles, si el rol mínimo está definido en el archivo de especificación, cualquier usuario con el rol mínimo puede llamar a este método. Si no es así, cualquier usuario puede utilizar este método para acuñar tokens. Además, el emisor de llamada también debe ser el creador del token. No hay límite superior para la cantidad de tokens fraccionales no fungibles que se pueden acuñar.
No puede utilizar este método para acuñar un token no fungible completo.
- Carga Útil:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"sameOrgEndorser": true
}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
tokenIds: string[]
: lista de ID de token para los que acuñar tokens.
quantity: number[]
: lista de cantidades de tokens para acuñar, correspondiente a la matriz de ID de token.
- Devuelve:
- En caso de éxito, un objeto JSON que incluye detalles sobre los tokens acuñados.
- Ejemplo de Valor de Devolución:
{
"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
- Nombre del método original:
ownerOf
- Este método GET devuelve el ID de cuenta, el ID de organización y el ID de usuario del propietario del ID de token especificado. Cualquiera puede llamar a este método.
- Consulta:
/ownerOf?tokenId={{bc-token-id}}
- Parámetros:
tokenId: string
: ID del token.
- Ejemplo de Valor de Devolución:
[
{
"accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
"orgId": "Org1MSP",
"userId": "admin"
},
{
"accountId": "oaccount~74108eca702bab6d8548e740254f2cc7955d886885251d52d065042172a59db0",
"orgId": "Org1MSP",
"userId": "user"
}
]
-
payInterest
- Nombre del método original:
ownerOf
- Este método POST solo puede ser llamado por el creador o administrador del token para pagar los intereses obtenidos en el token del bono. Este método solo se puede llamar si la frecuencia de interés del token es mensual, trimestral o anual. No se puede pagar el interés si la frecuencia de interés está al vencimiento. El código de cadenas calcula el interés en función del tipo de cupón del token. La operación de compra transfiere tokens CBDC de la cuenta del emisor de la llamada a la cuenta del propietario del bono. Debido a esto, este método se debe ejecutar en el contexto de una transacción atómica. El método también verifica el proceso de transferencia, lo que garantiza que se llame al código de cadena CBDC adecuado con los valores
orgId
y userId
correctos para la transferencia. orgId
y userId
deben corresponder al propietario del token, y el valor de transferencia del token CBDC debe ser igual al interés calculado por el código de cadena de bonos.
- Carga Útil:
{
"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
: ID del proveedor de servicios de miembros (MSP) del usuario.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
tokenId: string
: ID del token.
orderId: string
: ID de orden para la operación.
CBDCTokenId: string
: ID del token en el código de cadena CBDC.
CBDCOrgId: string
: ID de MSP del usuario en el código de cadenas CBDC.
CBDCUserId: string
: nombre de usuario o ID de correo electrónico del usuario en el código de cadenas CBDC.
CBDCQuantity: string
: cantidad de tokens que se transferirán en el código de cadena CBDC.
CBDCRemark: string
: comentario para la transferencia en el código de cadena CBDC, que debe tener el formato mostrado anteriormente.
- Ejemplo de Valor de Devolución:
{
"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
- Nombre del método original:
postBondToken
- Este método POST solo puede ser llamado por un creador de tokens. El método envía el token de bono para su inclusión en el mercado. Cuando se crea un token, su estado se define inicialmente en
created
. Este método actualiza el estado a posted
. Los usuarios pueden ejecutar el método getAllTokensWithFilter
para recuperar todos los NFT con el estado posted
.
- Carga Útil:
{
"tokenId": "{{bc-token-id}}",
"sameOrgEndorser": true
}
- Parámetros:
tokenId: string
: ID del token que se va a publicar.
- Ejemplo de Valor de Devolución:
{
"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
- Nombre del método original:
purchaseBondToken
- Este método POST puede ser llamado por cualquier titular de cuenta para comprar un bono NFT. La compra transfiere el bono NFT de la cuenta del creador a la cuenta del emisor de la llamada y transfiere tokens CBDC de la cuenta del emisor de la llamada a la cuenta del creador. Debido a esto, el método se debe ejecutar en el contexto de una transacción atómica. El método también verifica el proceso de transferencia, lo que garantiza que se llame al código de cadena CBDC adecuado con los valores
orgId
y userId
correctos para la transferencia. orgId
y userId
deben corresponder al creador del token, y el valor de transferencia del token CBDC debe ser igual al valor nominal del token de bono multiplicado por la cantidad que se compra.
- Carga Útil:
{
"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
: ID del token que se va a comprar.
orgId: string
: ID del proveedor de servicios de miembros (MSP) del usuario.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
settlementId: string
: ID de liquidación para la operación.
CBDCTokenId: string
: ID del token en el código de cadena CBDC.
CBDCOrgId: string
: ID de MSP del usuario en el código de cadenas CBDC.
CBDCUserId: string
: nombre de usuario o ID de correo electrónico del usuario en el código de cadenas CBDC.
CBDCQuantity: string
: cantidad de tokens que se transferirán en el código de cadena CBDC.
CBDCRemark: string
: comentario para la transferencia en el código de cadena CBDC, que debe tener el formato mostrado anteriormente.
- Ejemplo de Valor de Devolución:
{
"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
- Nombre del método original:
rejectBondRedemption
- El creador del token puede llamar a este método POST para rechazar la solicitud de canje. Los propietarios de tokens pueden volver a generar una solicitud de canje utilizando un ID de liquidación diferente.
- Carga Útil:
{
"fromOrgId": "fromOrgId value",
"fromUserId": "fromUserId value",
"settlementId": "settlementId value",
"tokenId": "{{bc-token-id}}",
"endorsers": {{endorsers}}
}
- Parámetros:
fromOrgId: string
: ID del proveedor de servicios de miembros (MSP) del usuario.
fromUserId: string
: nombre de usuario o ID de correo electrónico del usuario.
settlementId: string
: ID de liquidación para la operación de canje.
tokenId: string
: ID del token.
- Ejemplo de Valor de Devolución:
{
"status":"success",
"msg":"Successfully rejected the token approval request"
}
-
removeRole
- Nombre del método original:
removeRole
- Este método POST elimina un rol de un usuario y token especificados. Los tokens fungibles se especifican mediante el ID de token. Los tokens no fungibles se especifican mediante el nombre del token. Este método solo puede ser llamado por
Token Admin
del código de cadenas.
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"role": "role value (for example minter / burner)",
"tokenDetail": "{\"tokenName\":\"tokenName value\"}",
"endorsers": {{endorsers}}
}
- Parámetros:
- Ejemplo de Valor de Devolución:
{
"msg": "Successfully removed role 'minter' from Account Id: oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b (Org-Id: appdev, User-Id: user1)"
}
-
removeTokenAdmin
- Nombre del método original:
removeTokenAdmin
- Este método POST elimina un usuario como
Token Admin
del código de cadenas. Este método solo puede ser llamado por Token Admin
del código de cadenas. No puede eliminarse como Token Admin
.
- Carga Útil:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"sameOrgEndorser": true
}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Devuelve:
- Cuando se realiza correctamente, un mensaje que incluye detalles del usuario que se eliminó como
Token Admin
del código de cadenas.
- Ejemplo de Valor de Devolución:
{"msg": "Successfully removed Admin (OrgId: appDev, UserId: user1)"}
-
requestBondRedemption
- Nombre del método original:
requestBondRedemption
- Este método POST solo puede ser llamado por el propietario del token para presentar una solicitud para el canje de tokens de bonos después del vencimiento. Este método también implica el cálculo del precio de canje por el código de cadenas. Las solicitudes de canje solo se pueden generar en toda la cantidad del token de bono que posee el usuario. Los usuarios pueden generar varias solicitudes de canje en función de diferentes ID de liquidación, pero solo uno puede ser aprobado por el creador del token.
- Carga Útil:
{
"settlementId": "settlementId value",
"tokenId": "{{bc-token-id}}",
"orderId": "orderId value",
"additionalFees": 1,
"endorsers": {{endorsers}}
}
- Parámetros:
settlementId: string
: ID de liquidación para la operación de canje.
tokenId: string
: ID del token.
orderId: string
: ID de pedido de la operación de compra.
additionalFees: number
– Las tarifas adicionales que se añaden al precio de canje.
- Ejemplo de Valor de Devolución:
{
"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
- Nombre del método original:
safeBatchTransferFrom
- Este método POST completa una operación por lotes que transfiere tokens especificados en una lista de ID de token de un usuario a otro usuario.
Para las NFT, debido a que el método transfiere la propiedad de la NFT, el remitente de la NFT debe ser propietario del token.
Para las NFT fraccionadas, si un usuario (incluido el creador del token) transfiere todos los recursos compartidos que posee, entonces pierde la propiedad del token. Si se transfiere cualquier parte de un token a un usuario, ese usuario se convierte automáticamente en uno de los propietarios de la NFT fraccional.
El emisor de llamada del método debe ser el remitente 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
: ID del proveedor de servicios de membresía (MSP) del remitente y el propietario del token en la organización actual.
fromUserId: string
: nombre de usuario o ID de correo electrónico del remitente y propietario del token.
toOrgId: string
: ID del proveedor de servicios de membresía (MSP) del receptor en la organización actual.
toUserId: string
: nombre de usuario o ID de correo electrónico del destinatario.
tokenIds: string[]
: lista de ID de token para los tokens que se van a transferir.
quantity: number[]
: lista de cantidades de tokens que se transferirán, correspondiente a la matriz de ID de token.
- Devuelve:
- Si se realiza correctamente, un mensaje con detalles para cada transferencia de token.
- Ejemplo de Valor de Devolución:
[
{
"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
- Nombre del método original:
suspendAccount
- Este método POST suspende una cuenta de token. Este método solo puede ser llamado por
Token Admin
del código de cadenas. Después de suspender una cuenta, no puede completar ninguna operación que actualice la cuenta. No se puede suspender una cuenta suprimida.
- Carga Útil:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parámetros:
orgId: string
: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
userId: string
: nombre de usuario o ID de correo electrónico del usuario.
- Devuelve:
- Si se realiza correctamente, una representación JSON del estado de la cuenta de token.
- Ejemplo de Valor de Devolución:
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "suspended"
}
-
updateBondToken
- Nombre del método original:
updateBondToken
- Este método POST actualiza tokens. Cada token definido tiene su propio método de actualización. No puede actualizar los metadatos de token ni el URI de token de tokens no fungibles. Sólo el propietario del token puede llamar a este método.
- Carga Útil:
{
"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>
: activo de token. Las propiedades del activo se definen en el archivo de modelo.
- Devuelve:
- Si se realiza correctamente, el activo de token actualizado en formato JSON.
- Ejemplo de valor de devolución (NFT completo)
{
"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
- Nombre del método original:
URI
- Este método devuelve el URI de un token especificado.
- Consulta:
/URI?tokenId={{bc-token-id}}
- Parámetros:
tokenId: string
: ID del token.
- Ejemplo de Valor de Devolución:
{
"tokenUri": "example.com"
}