Paquete de API de envoltorio de marco de token no fungible

Oracle Blockchain Platform Digital Assets Edition incluye un paquete de API de envoltorio que amplía la API de REST para admitir operaciones específicas de un mercado de NFT coleccionable.

El paquete API wrapper utiliza el servicio API Gateway y OCI Functions para desplegar rutas de API diseñadas específicamente para la aplicación de marketplace coleccionable. El paquete de API de envoltorio de marco de token no fungible se puede descargar desde la consola de Oracle Blockchain Platform e incluye los siguientes componentes.
  • NFTCollectiblesWithERC721WrapperAPI.zip, un archivo de almacenamiento que contiene el paquete de API de envoltorio, incluidos los scripts de Terraform necesarios para el despliegue. Puede desplegar este archivo en una pila de Resource Manager en Oracle Cloud Infrastructure (OCI) para crear los recursos de Oracle necesarios para las API de Wrapper.
  • NFTCollectiblesWithERC721_WrapperAPI.postman_collection.json, una recopilación de Postman que permite probar las API de envoltorio desplegadas. La recopilación incluye solicitudes preconfiguradas con puntos finales y cargas útiles que corresponden a las API definidas en el paquete de API de envoltorio.

API de envoltorio

activateAccount
Nombre del método original: activateAccount
Este método POST activa una cuenta de token. Este método solo lo puede llamar un administrador. Para las cuentas creadas antes de la funcionalidad de estado de cuenta, debe llamar a este método para ver el estado de la cuenta como activo.
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.
  • endorsers: string[]: matriz de los peers (por ejemplo, peer1, peer2) que deben avalar la transacción.
Devuelve:
  • Una representación JSON del objeto de estado de cuenta para la cuenta de token especificada.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "db0738d4a44f6d9c80b24fce7c518c07023f7be19edaa69b272eaf7886b4b925",
        "payload": {
            "assetType": "oaccountStatus",
            "status_id": "oaccountStatus~d5814d96d8517ac31727d60aace0519c58a425892ab0d378fcfb0a35771f65ae",
            "account_id": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
            "status": "active"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 194
    }
}
addTokenAdmin
Nombre del método original: addTokenAdmin
Este método POST agrega 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.
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.
  • sameOrgEndorser: boolean: valor booleano que indica si los endosos de transacción deben ser de la misma organización que el solicitante.
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:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "msg":"Successfully added Admin (orgId: Org1MSP, userId: User1)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 190
    }
}
addRole
Nombre del método original: addRole
Este método agrega el rol al usuario y al token especificados.
Carga Útil:
{
    "role": "role value (for example minter / burner)",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Parámetros:
  • role: string: nombre del rol que se va a agregar al usuario especificado.
  • 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.
  • endorsers: string[]: matriz de los peers (por ejemplo, peer1, peer2) que deben avalar la transacción.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "msg": "Successfully added role 'minter' to Account Id: oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d (Org-Id: Org1MSP, User-Id: admin)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
addTokenSysRole
Nombre del método original: addTokenSysRole
Este método agrega Org Admins al código de cadena de token.
Carga Útil:
{
    "role": "role value (for example vault)",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Parámetros:
  • role: string: nombre del rol que se va a agregar al usuario especificado.
  • 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.
  • endorsers: string[]: matriz de los peers (por ejemplo, peer1, peer2) que deben avalar la transacción.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "96a84dffcb9156f7271dfb414e8c43b540595044cf9145f5fd56e9873797fc4a",
        "payload": {
            "msg": "Successfully added Org Admin (Org_Id: CB, User_Id: cb)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 197
    }
}
balanceOf
Nombre del método original: balanceOf
Este método GET devuelve el número total de NFT que contiene un usuario especificado. Este método solo lo puede llamar un Token Admin del código de cadenas o el propietario de la cuenta.
Consulta:
/balanceOf?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:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload":  {
            "totalNfts": 0
        },
        "encode": "JSON"
    }
}
buy
Nombre del método original: buy
Este método POST compra un token que está a la venta.
Carga Útil:
{
    "fromOrgId": "from_org_id value",
    "fromUserId": "from_user_id value",
    "toOrgId": "to_org_id value",
    "toUserId": "to_user_id value",
    "nonfungibleTokenId": "nonfungible_token_id value",
    "amountPaid": 1,
    "endorsers": {{endorsers}}
}
Parámetros:
  • fromOrgId: string: ID del proveedor de servicios de membresía (MSP) del remitente (propietario) en la organización actual.
  • fromUserId: string: nombre de usuario o ID de correo electrónico del remitente (propietario).
  • 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.
  • nonfungibleTokenId: string: ID del token que se va a comprar.
  • amountPaid: number: precio del token.
  • endorsers: string[]: matriz de los peers (por ejemplo, peer1, peer2) que deben avalar la transacción.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "msg": "Token ID: 'monalisa' has been successfully transferred to UserID :oaccount~ec32cff8635a056f3dda3da70b1d6090d61f66c6a170c4a95fd008181f729dba"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
createAccount
Nombre del método original: createAccount
Este método crea una cuenta para un usuario y un token especificados. Se debe crear una cuenta para cualquier usuario que tenga tokens en cualquier momento. Las cuentas realizan un seguimiento del número de NFT que posee un usuario. Un ID de cuenta es un juego alfanumérico de caracteres, con el prefijo oaccount~ y seguido de un hash SHA-256 del ID de proveedor de servicios de miembros (orgId) del usuario en la organización de red actual, el nombre de usuario o el ID de correo electrónico (userId) del propietario de la instancia o el usuario que está conectado a la instancia y la cadena constante nft. 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: 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 (-).
  • tokenType: TokenType: tipo de token, que debe ser fungible.
  • endorsers: string[]: matriz de los peers (por ejemplo, peer1, peer2) que deben avalar la transacción.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "assetType": "oaccount",
            "accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
            "bapAccountVersion": 0,
            "userId": "admin",
            "orgId": "Org1MSP",
            "tokenType": "nonfungible",
            "noOfNfts": 0
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
createArtCollectionToken
Nombre del método original: createArtCollectionToken
Este método POST crea (minta) un NFT. El activo y las propiedades asociadas se guardan en la base de datos de estado. El emisor de llamada de esta transacción debe tener una cuenta de token. El emisor de la llamada de esta transacción se convierte en el propietario de la NFT. Si el archivo de especificación de token incluye la sección roles para behaviors y la propiedad minter_role_name para roles, el emisor de llamada de la transacción debe tener el rol mínimo. De lo contrario, cualquier emisor de llamada puede acuñar NFT.
Carga Útil:
{
    "tokenAsset": "{\"tokenId\":\"{{bc-token-id}}\",\"tokenDesc\":\"tokenDesc value\",\"tokenUri\":\"tokenUri value\",\"metadata\":{\"Painting_Name\":\"Painting_Name value\",\"Description\":\"Description value\",\"Painter_Name\":\"Painter_Name value\"},\"Price\":999,\"On_Sale_Flag\":true}",
    "sameOrgEndorser": true
}
Parámetros:
  • tokenAsset: <Token Class>: activo de token que acuñar. Para obtener más información sobre las propiedades del activo de token, consulte el archivo de especificación de entrada.
  • sameOrgEndorser: boolean: valor booleano que indica si los endosos de transacción deben ser de la misma organización que el solicitante.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "metadata": {
                "painting_name": "Mona_Lisa",
                "description": "Mona Lisa Painting",
                "image": "monalisa.jpeg",
                "painter_name": "Leonardo_da_Vinci"
            },
            "assetType": "otoken",
            "tokenId": "monalisa",
            "tokenName": "artcollection",
            "tokenDesc": "token description",
            "symbol": "ART",
            "tokenStandard": "erc721+",
            "tokenType": "nonfungible",
            "tokenUnit": "whole",
            "behaviors": [
                "indivisible",
                "singleton",
                "mintable",
                "transferable",
                "burnable",
                "roles"
            ],
            "roles": {
                "minter_role_name": "minter"
            },
            "mintable": {
                "max_mint_quantity": 20000
            },
            "owner": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
            "createdBy": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
            "creationDate": "2022-04-05T08:30:42.000Z",
            "isBurned": false,
            "tokenUri": "\"https://bafybeid6pmpp62bongoip5iy2skosvyxh3gr7r2e35x3ctvawjco6ddmsq\\ .ipfs.infura-ipfs.io/?filename=MonaLisa.jpeg\"",
            "price": 100,
            "on_sale_flag": false
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
deleteAccount
Nombre del método original: deleteAccount
Este método POST suprime una cuenta de token. Después de suprimir una cuenta, la cuenta tiene el estado final y no se puede actualizar ni cambiar a ningún otro estado. Para suprimir una cuenta, el saldo de cuenta debe ser cero. 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, una representación JSON del estado de la cuenta de token.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
          "assetType": "oaccountStatus",
          "statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
          "accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
          "status": "deleted"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
getAccountByUser
Nombre del método original: getAccountByUser
Este método devuelve los detalles de la cuenta de 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:
/getAccountByUser?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:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
          "bapAccountVersion": 0,
          "assetType": "oaccount",
          "status": "active",
          "accountId": "oaccount~cc301bee057f14236a97d434909ec1084970921b008f6baab09c2a0f5f419a9a",
          "userId": "idcqa",
          "orgId": "appdev",
          "tokenType": "nonfungible",
          "noOfNfts": 0
        },
        "encode": "JSON"
    }
}
getAccountHistory
Nombre del método original: getAccountHistory
Este método devuelve el historial de cuentas de un usuario especificado. Se trata de un método asíncrono. Este método solo lo puede llamar el Token Admin del código de cadenas o el propietario de la cuenta.
Consulta:
/getAccountHistory?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:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": [
            {
                "trxId": "6ffd0d94f234c12444a5d5aa559563b59dff4d2280b573fea956dc632bdaf5d4",
                "timeStamp": 1649151044,
                "value": {
                    "assetType": "oaccount",
                    "bapAccountVersion" : 5,
                    "accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "userId": "admin",
                    "orgId": "Org1MSP",
                    "tokenType": "nonfungible",
                    "noOfNfts": 1
                }
            },
            {
                "trxId": "a605f1fa62e511c2945fce5437f983a5e70ec814b82520d3ecd2d81e3ecf53a3",
                "timeStamp": 1649151022,
                "value": {
                    "assetType": "oaccount",
                    "bapAccountVersion" : 4,
                    "accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "userId": "admin",
                    "orgId": "Org1MSP",
                    "tokenType": "nonfungible",
                    "noOfNfts": 2
                }
            },
            {
                "trxId": "ca4c07bf04240345de918cbf1f4f3da4b4d0ab044c5b8bea94343e427d9ed4e7",
                "timeStamp": 1649150910,
                "value": {
                    "assetType": "oaccount",
                    "bapAccountVersion" : 3,
                    "accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "userId": "admin",
                    "orgId": "Org1MSP",
                    "tokenType": "nonfungible",
                    "noOfNfts": 1
                }
            },
            {
                "trxId": "cfb52ffc8c34c7fd86210fcf8c5f53d9f92a056c45ed3a33671d638020c1f9cb",
                "timeStamp": 1649149545,
                "value": {
                    "assetType": "oaccount",
                    "bapAccountVersion" : 2,
                    "accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "userId": "admin",
                    "orgId": "Org1MSP",
                    "tokenType": "nonfungible",
                    "noOfNfts": 0
                }
            },
            {
                "trxId": "e7747b3001a170f88688620956320e9402e1dd8edad8afb4818a08a34647337c",
                "timeStamp": 1649147442,
                "value": {
                    "assetType": "oaccount",
                    "bapAccountVersion" : 1,
                    "accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "userId": "admin",
                    "orgId": "Org1MSP",
                    "tokenType": "nonfungible",
                    "noOfNfts": 1
                }
            },
            {
                "trxId": "d2d1f9c898707ae831e9361bc25da6369eac37b10c87dc04d18d6f3808222f08",
                "timeStamp": 1649137534,
                "value": {
                    "assetType": "oaccount",
                    "bapAccountVersion" : 0,
                    "accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "userId": "admin",
                    "orgId": "Org1MSP",
                    "tokenType": "nonfungible",
                    "noOfNfts": 0
                }
            }
        ],
        "encode": "JSON"
    }
}
getAccountsByRole
Nombre del método original: getAccountsByRole
Este método devuelve una lista de todos los ID de cuenta para un rol especificado. Este método solo puede ser llamado por Token Admin del código de cadenas.
Consulta:
/getAccountsByRole?role=role value (for example minter / burner)
Parámetros:
  • role: string: nombre del rol que se va a buscar.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "accounts": [
                "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d"
            ]
        },
        "encode": "JSON"
    }
}
getAccountsByTokenSysRole
Nombre del método original: getAccountsByTokenSysRole
Este método devuelve una lista de todos los ID de cuenta para un rol TokenSys especificado. Este método solo puede ser llamado por Token Admin del código de cadenas.
Consulta:
/getAccountsByTokenSysRole?role=role value (for example vault)
Parámetros:
  • role: string: nombre del rol TokenSys que se va a buscar.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "accountIds": [
                "oaccount~bf07f584a94be44781e49d9101bfaf58c6fbbe77a4dfebdb83c874c2caf03eba"
            ]
        },
        "encode": "JSON"
    }
}
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:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "assetType": "oaccountStatus",
            "statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
            "accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
            "status": "active"
        },
        "encode": "JSON"
    }
}
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:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
          {
            "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"
            }
          }
        ],
        "encode": "JSON"
    }
}
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:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "transactionId": "otransaction~6ffd0d94f234c12444a5d5aa559563b59dff4d2280b573fea956dc632bdaf5d4",
                "timestamp": "2022-04-05T09:30:44.000Z",
                "tokenId": "monalisa1",
                "noOfNfts": 1,
                "transactedAccount": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                "transactionType": "BURN"
            },
            {
                "transactionId": "otransaction~a605f1fa62e511c2945fce5437f983a5e70ec814b82520d3ecd2d81e3ecf53a3",
                "timestamp": "2022-04-05T09:30:22.000Z",
                "tokenId": "monalisa1",
                "transactedAccount": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                "transactionType": "MINT"
            },
            {
                "transactionId": "otransaction~ca4c07bf04240345de918cbf1f4f3da4b4d0ab044c5b8bea94343e427d9ed4e7",
                "timestamp": "2022-04-05T09:28:30.000Z",
                "tokenId": "monalisa",
                "transactedAccount": "oaccount~ec32cff8635a056f3dda3da70b1d6090d61f66c6a170c4a95fd008181f729dba",
                "transactionType": "CREDIT"
            },
            {
                "transactionId": "otransaction~cfb52ffc8c34c7fd86210fcf8c5f53d9f92a056c45ed3a33671d638020c1f9cb",
                "timestamp": "2022-04-05T09:05:45.000Z",
                "tokenId": "monalisa",
                "transactedAccount": "oaccount~ec32cff8635a056f3dda3da70b1d6090d61f66c6a170c4a95fd008181f729dba",
                "transactionType": "DEBIT"
            },
            {
                "transactionId": "otransaction~e7747b3001a170f88688620956320e9402e1dd8edad8afb4818a08a34647337c",
                "timestamp": "2022-04-05T08:30:42.000Z",
                "tokenId": "monalisa",
                "transactedAccount": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                "transactionType": "MINT"
            }
        ],
        "encode": "JSON"
    }
}
getAccountTransactionHistoryWithFilters
Nombre del método original: getAccountTransactionHistoryWithFilters
Este método GET devuelve el historial de transacciones de cuenta para un usuario especificado, filtrado por PageSize, Bookmark, startTime y endTime. Se trata de un método asíncrono. Este método solo se puede llamar cuando está conectado a la red remota de Oracle Blockchain Platform. Este método solo lo puede llamar el Token Admin del código de cadenas o el propietario de la cuenta.
/getAccountTransactionHistoryWithFilters?orgId={{bc-org-id}}&userId={{bc-user-id}}&filters={"pageSize":20,"bookmark":"","startTime":"2022-01-16T15:16:36+00:00","endTime":"2022-01-17T15:16:36+00:00"}
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.
  • filters: object: objeto de la clase de filtro que contiene cuatro atributos: pageSize, bookmark, startTime y endTime.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "transactionId": "otransaction~6ffd0d94f234c12444a5d5aa559563b59dff4d2280b573fea956dc632bdaf5d4",
                "timestamp": "2022-04-05T09:30:44.000Z",
                "tokenId": "monalisa1",
                "transactedAccount": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                "transactionType": "BURN"
            },
            {
                "transactionId": "otransaction~a605f1fa62e511c2945fce5437f983a5e70ec814b82520d3ecd2d81e3ecf53a3",
                "timestamp": "2022-04-05T09:30:22.000Z",
                "tokenId": "monalisa1",
                "transactedAccount": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                "transactionType": "MINT"
            },
            {
                "transactionId": "otransaction~ca4c07bf04240345de918cbf1f4f3da4b4d0ab044c5b8bea94343e427d9ed4e7",
                "timestamp": "2022-04-05T09:28:30.000Z",
                "tokenId": "monalisa",
                "transactedAccount": "oaccount~ec32cff8635a056f3dda3da70b1d6090d61f66c6a170c4a95fd008181f729dba",
                "transactionType": "CREDIT"
            },
            {
                "transactionId": "otransaction~cfb52ffc8c34c7fd86210fcf8c5f53d9f92a056c45ed3a33671d638020c1f9cb",
                "timestamp": "2022-04-05T09:05:45.000Z",
                "tokenId": "monalisa",
                "transactedAccount": "oaccount~ec32cff8635a056f3dda3da70b1d6090d61f66c6a170c4a95fd008181f729dba",
                "transactionType": "DEBIT"
            },
            {
                "transactionId": "otransaction~e7747b3001a170f88688620956320e9402e1dd8edad8afb4818a08a34647337c",
                "timestamp": "2022-04-05T08:30:42.000Z",
                "tokenId": "monalisa",
                "transactedAccount": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                "transactionType": "MINT"
            }
        ],
        "encode": "JSON"
    }
}
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:
  • ninguno
Devuelve:
  • En caso de éxito, una matriz JSON de todas las cuentas.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "key": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                "valueJson": {
                    "assetType": "oaccount",
                    "accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "userId": "admin",
                    "orgId": "Org1MSP",
                    "tokenType": "nonfungible",
                    "noOfNfts": 1
                }   
            }
        ],
        "encode": "JSON"
    }
}
getAllLockedNFTs
Nombre del método original: getAllLockedNFTs
Este método GET devuelve una lista de todas las NFT bloqueadas. Este método solo lo puede llamar un Token Admin del código de cadenas o el gestor de almacén (el usuario con el rol TokenSys vault).
Consulta:
/getAllLockedNFTs
Parámetros:
  • ninguno
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
           {
              "key":"token1",
              "valueJson":{
                 "assetType":"otoken",
                 "tokenId":"token1",
                 "tokenName":"artcollection",
                 "symbol":"ART",
                 "tokenStandard":"erc721+",
                 "tokenType":"nonfungible",
                 "tokenUnit":"whole",
                 "behaviors":[
                    "indivisible",
                    "singleton",
                    "mintable",
                    "transferable",
                    "lockable",
                    "burnable",
                    "roles"
                 ],
                 "roles":{
                    "minter_role_name":"minter"
                 },
                 "mintable":{
                    "max_mint_quantity":20000
                 },
                 "createdBy":"oaccount~208e3345ac84b4849f0d2648b2f2f018019886a1230f99304ebff1b6a7733463",
                 "creationDate":"2023-10-20T10:26:29.000Z",
                 "owner":"oaccount~208e3345ac84b4849f0d2648b2f2f018019886a1230f99304ebff1b6a7733463",
                 "isBurned":false,
                 "isLocked":true,
                 "tokenUri":"token1.example.com",
                 "price":120,
                 "on_sale_flag":false
              }
           }
        ],
        "encode": "JSON"
    }
}
getAllTokenAdmins
Nombre del método original: getAllTokenAdmins
Este método 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:
  • ninguno
Devuelve:
  • Cuando se realiza correctamente, una matriz admins en formato JSON que contiene objetos orgId y userId.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "admins":[
                {
                    "orgId":"Org1MSP",
                    "userId":"admin"
                }
            ]
        },
        "encode": "JSON"
    }
}
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.
Consulta:
/getAllTokens
Parámetros:
  • ninguno
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "key": "monalisa",
                "valueJson": {
                    "metadata": {
                        "PaintingName": "Mona_Lisa",
                        "Description": "Mona Lisa Painting",
                        "Image": "monalisa.jpeg",
                        "PainterName": "Leonardo_da_Vinci"
                    },
                    "assetType": "otoken",
                    "tokenId": "monalisa",
                    "tokenName": "ravinft",
                    "tokenDesc": "token Description",
                    "symbol": "PNT",
                    "tokenStandard": "erc721+",
                    "tokenType": "nonfungible",
                    "tokenUnit": "whole",
                    "behaviors": [
                        "indivisible",
                        "singleton",
                        "mintable",
                        "transferable",
                        "burnable",
                        "roles"
                    ],
                    "roles": {
                        "minter_role_name": "minter",
                        "burner_role_name": "burner"
                    },
                    "mintable": {
                        "max_mint_quantity": 20000
                    },
                    "owner": "oaccount~543c2258e351c3e7a40ea59b81e62154d38fbfc9d1b5b79f30ac5e08e7d0dfd1",
                    "createdBy": "oaccount~543c2258e351c3e7a40ea59b81e62154d38fbfc9d1b5b79f30ac5e08e7d0dfd1",
                    "creationDate": "2022-04-07T21:17:48.000Z",
                    "isBurned": false,
                    "tokenUri": "https://bafybeid6pmpp62bongoip5iy2skosvyxh3gr7r2e35x3ctvawjco6ddmsq\\\\ .ipfs.infura-ipfs.io/?filename=MonaLisa.jpeg",
                    "NftBasePrice": 100
                }
            },
            {
                "key": "monalisa1",
                "valueJson": {
                    "metadata": {
                        "PaintingName": "Mona_Lisa",
                        "Description": "Mona Lisa Painting",
                        "Image": "monalisa.jpeg",
                        "PainterName": "Leonardo_da_Vinci"
                    },
                    "assetType": "otoken",
                    "tokenId": "monalisa1",
                    "tokenName": "ravinft",
                    "tokenDesc": "token Description",
                    "symbol": "PNT",
                    "tokenStandard": "erc721+",
                    "tokenType": "nonfungible",
                    "tokenUnit": "whole",
                    "behaviors": [
                        "indivisible",
                        "singleton",
                        "mintable",
                        "transferable",
                        "burnable",
                        "roles"
                    ],
                    "roles": {
                        "minter_role_name": "minter",
                        "burner_role_name": "burner"
                    },
                    "mintable": {
                        "max_mint_quantity": 20000
                    },
                    "owner": "oaccount~543c2258e351c3e7a40ea59b81e62154d38fbfc9d1b5b79f30ac5e08e7d0dfd1",
                    "createdBy": "oaccount~543c2258e351c3e7a40ea59b81e62154d38fbfc9d1b5b79f30ac5e08e7d0dfd1",
                    "creationDate": "2022-04-07T21:17:59.000Z",
                    "isBurned": false,
                    "tokenUri": "https://bafybeid6pmpp62bongoip5iy2skosvyxh3gr7r2e35x3ctvawjco6ddmsq\\\\ .ipfs.infura-ipfs.io/?filename=MonaLisa.jpeg",
                    "NftBasePrice": 100
                }
            }
        ],
        "encode": "JSON"
    }
}
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:
  • org_id: string: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
  • user_id: string: nombre de usuario o ID de correo electrónico del usuario.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "key": "monalisa",
                "valueJson": {
                    "metadata": {
                        "PaintingName": "Mona_Lisa",
                        "Description": "Mona Lisa Painting",
                        "Image": "monalisa.jpeg",
                        "PainterName": "Leonardo_da_Vinci"
                    },
                    "assetType": "otoken",
                    "tokenId": "monalisa",
                    "tokenName": "ravinft",
                    "tokenDesc": "token Description",
                    "symbol": "PNT",
                    "tokenStandard": "erc721+",
                    "tokenType": "nonfungible",
                    "tokenUnit": "whole",
                    "behaviors": [
                        "indivisible",
                        "singleton",
                        "mintable",
                        "transferable",
                        "burnable",
                        "roles"
                    ],
                    "roles": {
                        "minter_role_name": "minter",
                        "burner_role_name": "burner"
                    },
                    "mintable": {
                        "max_mint_quantity": 20000
                    },
                    "owner": "oaccount~543c2258e351c3e7a40ea59b81e62154d38fbfc9d1b5b79f30ac5e08e7d0dfd1",
                    "createdBy": "oaccount~543c2258e351c3e7a40ea59b81e62154d38fbfc9d1b5b79f30ac5e08e7d0dfd1",
                    "creationDate": "2022-04-07T21:17:48.000Z",
                    "isBurned": false,
                    "tokenUri": "https://bafybeid6pmpp62bongoip5iy2skosvyxh3gr7r2e35x3ctvawjco6ddmsq\\\\ .ipfs.infura-ipfs.io/?filename=MonaLisa.jpeg",
                    "NftBasePrice": 100
                }
            },
            {
                "key": "monalisa1",
                "valueJson": {
                    "metadata": {
                        "PaintingName": "Mona_Lisa",
                        "Description": "Mona Lisa Painting",
                        "Image": "monalisa.jpeg",
                        "PainterName": "Leonardo_da_Vinci"
                    },
                    "assetType": "otoken",
                    "tokenId": "monalisa1",
                    "tokenName": "ravinft",
                    "tokenDesc": "token Description",
                    "symbol": "PNT",
                    "tokenStandard": "erc721+",
                    "tokenType": "nonfungible",
                    "tokenUnit": "whole",
                    "behaviors": [
                        "indivisible",
                        "singleton",
                        "mintable",
                        "transferable",
                        "burnable",
                        "roles"
                    ],
                    "roles": {
                        "minter_role_name": "minter",
                        "burner_role_name": "burner"
                    },
                    "mintable": {
                        "max_mint_quantity": 20000
                    },
                    "owner": "oaccount~543c2258e351c3e7a40ea59b81e62154d38fbfc9d1b5b79f30ac5e08e7d0dfd1",
                    "createdBy": "oaccount~543c2258e351c3e7a40ea59b81e62154d38fbfc9d1b5b79f30ac5e08e7d0dfd1",
                    "creationDate": "2022-04-07T21:17:59.000Z",
                    "isBurned": false,
                    "tokenUri": "https://bafybeid6pmpp62bongoip5iy2skosvyxh3gr7r2e35x3ctvawjco6ddmsq\\\\ .ipfs.infura-ipfs.io/?filename=MonaLisa.jpeg",
                    "NftBasePrice": 100
                }
            }
        ],
        "encode": "JSON"
    }
}
getLockedNFTsByOrg
Nombre del método original: getLockedNFTsByOrg
Este método devuelve una lista de todos los tokens no fungibles bloqueados para una organización especificada y, opcionalmente, un usuario especificado. Este método solo lo puede llamar un Token Admin del código de cadenas o el gestor de almacenes (el usuario con el rol TokenSys vault).
Consulta:
/getLockedNFTsByOrg?orgId={{bc-org-id}}&userId={{bc-user-id}}
Parámetros:
  • org_id: string: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
  • user_id: string: nombre de usuario o ID de correo electrónico del usuario.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
           {
              "key":"token1",
              "valueJson":{
                 "assetType":"otoken",
                 "tokenId":"token1",
                 "tokenName":"artcollection",
                 "symbol":"ART",
                 "tokenStandard":"erc721+",
                 "tokenType":"nonfungible",
                 "tokenUnit":"whole",
                 "behaviors":[
                    "indivisible",
                    "singleton",
                    "mintable",
                    "transferable",
                    "lockable",
                    "burnable",
                    "roles"
                 ],
                 "roles":{
                    "minter_role_name":"minter"
                 },
                 "mintable":{
                    "max_mint_quantity":20000
                 },
                 "createdBy":"oaccount~208e3345ac84b4849f0d2648b2f2f018019886a1230f99304ebff1b6a7733463",
                 "creationDate":"2023-10-20T10:26:29.000Z",
                 "owner":"oaccount~208e3345ac84b4849f0d2648b2f2f018019886a1230f99304ebff1b6a7733463",
                 "isBurned":false,
                 "isLocked":true,
                 "tokenUri":"token1.examplecom",
                 "price":120,
                 "on_sale_flag":false
              }
           }
        ],
        "encode": "JSON"
    }
}
getTokenById
Nombre del método original: getTokenById
Este método devuelve un objeto de token si el token está presente en la base de datos de estado. 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:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "metadata": {
                "painting_name": "Mona_Lisa",
                "description": "Mona Lisa Painting",
                "image": "monalisa.jpeg",
                "painter_name": "Leonardo_da_Vinci"
            },
            "assetType": "otoken",
            "tokenId": "monalisa",
            "tokenName": "artcollection",
            "tokenDesc": "token description",
            "symbol": "ART",
            "tokenStandard": "erc721+",
            "tokenType": "nonfungible",
            "tokenUnit": "whole",
            "behaviors": [
                "indivisible",
                "singleton",
                "mintable",
                "transferable",
                "burnable",
                "roles"
            ],
            "roles": {
                "minter_role_name": "minter"
            },
            "mintable": {
                "max_mint_quantity": 20000
            },
            "owner": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
            "createdBy": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
            "transferredBy": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
            "creationDate": "2022-04-05T08:30:42.000Z",
            "transferredDate": "2022-04-05T09:28:30.000Z",
            "isBurned": false,
            "tokenUri": "https://bafybeid6pmpp62bongoip5iy2skosvyxh3gr7r2e35x3ctvawjco6ddmsq\\ .ipfs.infura-ipfs.io/?filename=MonaLisa.jpeg",
            "price": 100,
            "on_sale_flag": true
        },
        "encode": "JSON"
    }
}
getTokenHistory
Nombre del método original: getTokenHistory
Este método devuelve el historial de un ID de token especificado. Se trata de un método asíncrono. Este método solo se puede llamar cuando está conectado a la red remota de Oracle Blockchain Platform. Cualquiera puede llamar a este método.
/getTokenHistory?tokenId={{bc-token-id}}
Parámetros:
  • tokenId: string: ID del token.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "trxId": "ca4c07bf04240345de918cbf1f4f3da4b4d0ab044c5b8bea94343e427d9ed4e7",
                "timeStamp": 1649150910,
                "value": {
                    "metadata": {
                        "painting_name": "Mona_Lisa",
                        "description": "Mona Lisa Painting",
                        "image": "monalisa.jpeg",
                        "painter_name": "Leonardo_da_Vinci"
                    },
                    "assetType": "otoken",
                    "tokenId": "monalisa",
                    "tokenName": "artcollection",
                    "tokenDesc": "token description",
                    "symbol": "ART",
                    "tokenStandard": "erc721+",
                    "tokenType": "nonfungible",
                    "tokenUnit": "whole",
                    "behaviors": [
                        "indivisible",
                        "singleton",
                        "mintable",
                        "transferable",
                        "burnable",
                        "roles"
                    ],
                    "roles": {
                        "minter_role_name": "minter"
                    },
                    "mintable": {
                        "max_mint_quantity": 20000
                    },
                    "owner": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "createdBy": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "transferredBy": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "creationDate": "2022-04-05T08:30:42.000Z",
                    "transferredDate": "2022-04-05T09:28:30.000Z",
                    "isBurned": false,
                    "tokenUri": "https://bafybeid6pmpp62bongoip5iy2skosvyxh3gr7r2e35x3ctvawjco6ddmsq\\ .ipfs.infura-ipfs.io/?filename=MonaLisa.jpeg",
                    "price": 100,
                    "on_sale_flag": true
                }
            },
            {
                "trxId": "cfb52ffc8c34c7fd86210fcf8c5f53d9f92a056c45ed3a33671d638020c1f9cb",
                "timeStamp": 1649149545,
                "value": {
                    "metadata": {
                        "painting_name": "Mona_Lisa",
                        "description": "Mona Lisa Painting",
                        "image": "monalisa.jpeg",
                        "painter_name": "Leonardo_da_Vinci"
                    },
                    "assetType": "otoken",
                    "tokenId": "monalisa",
                    "tokenName": "artcollection",
                    "tokenDesc": "token description",
                    "symbol": "ART",
                    "tokenStandard": "erc721+",
                    "tokenType": "nonfungible",
                    "tokenUnit": "whole",
                    "behaviors": [
                        "indivisible",
                        "singleton",
                        "mintable",
                        "transferable",
                        "burnable",
                        "roles"
                    ],
                    "roles": {
                        "minter_role_name": "minter"
                    },
                    "mintable": {
                        "max_mint_quantity": 20000
                    },
                    "owner": "oaccount~ec32cff8635a056f3dda3da70b1d6090d61f66c6a170c4a95fd008181f729dba",
                    "createdBy": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "transferredBy": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "creationDate": "2022-04-05T08:30:42.000Z",
                    "transferredDate": "2022-04-05T09:05:45.000Z",
                    "isBurned": false,
                    "tokenUri": "https://bafybeid6pmpp62bongoip5iy2skosvyxh3gr7r2e35x3ctvawjco6ddmsq\\ .ipfs.infura-ipfs.io/?filename=MonaLisa.jpeg",
                    "price": 100,
                    "on_sale_flag": true
                }
            },
            {
                "trxId": "702e61cc8d6d2982521023d0d5f3195900f35e146d6a90ef66daae551e6075d2",
                "timeStamp": 1649147729,
                "value": {
                    "metadata": {
                        "painting_name": "Mona_Lisa",
                        "description": "Mona Lisa Painting",
                        "image": "monalisa.jpeg",
                        "painter_name": "Leonardo_da_Vinci"
                    },
                    "assetType": "otoken",
                    "tokenId": "monalisa",
                    "tokenName": "artcollection",
                    "tokenDesc": "token description",
                    "symbol": "ART",
                    "tokenStandard": "erc721+",
                    "tokenType": "nonfungible",
                    "tokenUnit": "whole",
                    "behaviors": [
                        "indivisible",
                        "singleton",
                        "mintable",
                        "transferable",
                        "burnable",
                        "roles"
                    ],
                    "roles": {
                        "minter_role_name": "minter"
                    },
                    "mintable": {
                        "max_mint_quantity": 20000
                    },
                    "owner": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "createdBy": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "creationDate": "2022-04-05T08:30:42.000Z",
                    "isBurned": false,
                    "tokenUri": "https://bafybeid6pmpp62bongoip5iy2skosvyxh3gr7r2e35x3ctvawjco6ddmsq\\ .ipfs.infura-ipfs.io/?filename=MonaLisa.jpeg",
                    "price": 100,
                    "on_sale_flag": true
                }
            },
            {
                "trxId": "e7747b3001a170f88688620956320e9402e1dd8edad8afb4818a08a34647337c",
                "timeStamp": 1649147442,
                "value": {
                    "metadata": {
                        "painting_name": "Mona_Lisa",
                        "description": "Mona Lisa Painting",
                        "image": "monalisa.jpeg",
                        "painter_name": "Leonardo_da_Vinci"
                    },
                    "assetType": "otoken",
                    "tokenId": "monalisa",
                    "tokenName": "artcollection",
                    "tokenDesc": "token description",
                    "symbol": "ART",
                    "tokenStandard": "erc721+",
                    "tokenType": "nonfungible",
                    "tokenUnit": "whole",
                    "behaviors": [
                        "indivisible",
                        "singleton",
                        "mintable",
                        "transferable",
                        "burnable",
                        "roles"
                    ],
                    "roles": {
                        "minter_role_name": "minter"
                    },
                    "mintable": {
                        "max_mint_quantity": 20000
                    },
                    "owner": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "createdBy": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                    "creationDate": "2022-04-05T08:30:42.000Z",
                    "isBurned": false,
                    "tokenUri": "\"https://bafybeid6pmpp62bongoip5iy2skosvyxh3gr7r2e35x3ctvawjco6ddmsq\\ .ipfs.infura-ipfs.io/?filename=MonaLisa.jpeg\"",
                    "price": 100,
                    "on_sale_flag": false
                }
            }
        ]
        "encode": "JSON"
    }
}
getTransactionById
Nombre del método original: getTransactionById
Este método devuelve el historial de transacciones para un ID de transacción especificado. Se trata de un método asíncrono. Este método solo puede ser llamado por Token Admin del código de cadenas.
Consulta:
/getTransactionById?transactionId=transactionId value
Parámetros:
  • transactionId: string: ID de la transacción, que es el prefijo otransaction~ seguido del hash de 64 bits en formato hexadecimal.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "transactionId": "otransaction~6ffd0d94f234c12444a5d5aa559563b59dff4d2280b573fea956dc632bdaf5d4",
            "history": [
                {
                    "trxId": "6ffd0d94f234c12444a5d5aa559563b59dff4d2280b573fea956dc632bdaf5d4",
                    "timeStamp": 1649151044,
                    "value": {
                        "assetType": "otransaction",
                        "transactionId": "otransaction~6ffd0d94f234c12444a5d5aa559563b59dff4d2280b573fea956dc632bdaf5d4",
                        "tokenId": "monalisa1",
                        "fromAccountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                        "toAccountId": "",
                        "triggeredByAccountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
                        "transactionType": "BURN",
                        "timestamp": "2022-04-05T09:30:44.000Z",
                    }
                }
            ]
        },
        "encode": "JSON"
    }
}
getUserByAccountId
Nombre del método original: getUserByAccountId
Este método GET devuelve los detalles de usuario de una cuenta especificada.
Consulta:
/getUserByAccountId?accountId=accountId value
Parámetros:
  • accountId: string: ID de la cuenta.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
          "userId": "admin",
          "orgId": "Org1MSP"
        },
        "encode": "JSON"
    }
}
getUsersByRole
Nombre del método original: getUsersByRole
Este método devuelve una lista de todos los usuarios para un rol especificado.
/getUsersByRole?role=role value (for example minter / burner)
Parámetros:
  • role: string: nombre del rol que se va a buscar.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "users": [
                {
                    "userId": "admin",
                    "orgId": "Org1MSP"
                }
            ]
        },
        "encode": "JSON"
    }
}
init
Nombre del método original: init
Este método se llama cuando se despliega el código de cadenas. La información del usuario se guarda como Token Admin del código de cadenas.
Carga Útil:
{
    "adminList": "[{\"orgId\":\"{{bc-org-id}}\",\"userId\":\"{{bc-admin-user}}\"}]"
}
Parámetros:
  • adminList array: matriz de información {user_id, org_id} que especifica la lista de administradores de token. La matriz adminList es un parámetro obligatorio.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "fdb7dc89832c8045a333823b77fa24ae628178148dc93b3550040e070d7cd807",
        "payload": "",
        "encode": "UTF-8",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 263
    }
}
isInRole
Nombre del método original: isInRole
Este método GET devuelve un valor booleano para indicar si un usuario tiene un rol 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:
/isInRole?orgId={{bc-org-id}}&userId={{bc-user-id}}&role=role value (for example minter / burner)
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.
  • role: string: nombre del rol que se va a buscar.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "result":"true"
        },
        "encode": "JSON"
    }
}
isInTokenSysRole
Nombre del método original: isInTokenSysRole
Este método GET devuelve un valor booleano para indicar si un usuario tiene un rol TokenSys 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:
/isInTokenSysRole?orgId={{bc-org-id}}&userId={{bc-user-id}}&role=role value (for example vault)
Parámetros:
  • role: string: nombre del rol TokenSys que se va a buscar.
  • 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:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "result": true,
            "msg": "Account Id oaccount~bf07f584a94be44781e49d9101bfaf58c6fbbe77a4dfebdb83c874c2caf03eba (Org-Id: Org1MSP, User-Id: user1) has vault role"
        },
        "encode": "JSON"
    }
}
isNFTLocked
Nombre del método original: isNFTLocked
Este método GET devuelve un valor booleano para indicar si un token especificado está bloqueado. Este método solo lo puede llamar un Token Admin del código de cadenas, el propietario del token o el gestor de almacenes (el usuario con el rol TokenSys vault).
Consulta:
/isNFTLocked?tokenId={{bc-token-id}}
Parámetros:
  • tokenId: string: ID del token.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
           "isNFTLocked":true
        },
        "encode": "JSON"
    }
}
lockNFT
Nombre del método original: lockNFT
Este método POST bloquea un token no fungible especificado. Para bloquear un token, debe haber un usuario con el rol TokenSys vault, que actúe como gestor de almacén.
Carga Útil:
{
    "tokenId": "{{bc-token-id}}",
    "sameOrgEndorser": true
}
Parámetros:
  • tokenId: string: ID del token que se va a bloquear.
  • sameOrgEndorser: boolean: valor booleano que indica si los endosos de transacción deben ser de la misma organización que el solicitante.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
           "assetType":"otoken",
           "tokenId":"token1",
           "tokenName":"artcollection",
           "symbol":"ART",
           "tokenStandard":"erc721+",
           "tokenType":"nonfungible",
           "tokenUnit":"whole",
           "behaviors":[
              "indivisible",
              "singleton",
              "mintable",
              "transferable",
              "lockable",
              "burnable",
              "roles"
           ],
           "roles":{
              "minter_role_name":"minter"
           },
           "mintable":{
              "max_mint_quantity":20000
           },
           "createdBy":"oaccount~208e3345ac84b4849f0d2648b2f2f018019886a1230f99304ebff1b6a7733463",
           "creationDate":"2023-10-20T10:26:29.000Z",
           "owner":"oaccount~208e3345ac84b4849f0d2648b2f2f018019886a1230f99304ebff1b6a7733463",
           "isBurned":false,
           "isLocked":true,
           "tokenUri":"token1.example.com",
           "price":120,
           "on_sale_flag":false
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
name
Nombre de método original: name
Este método GET devuelve el nombre de la clase de token. Cualquiera puede llamar a este método.
Consulta:
/name
Parámetros: Ninguno
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {"tokenName": "artcollection"},
        "encode": "JSON"
    }
}
ownerOf
Nombre del método original: ownerOf
Este método GET devuelve el ID de cuenta 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.
Devuelve:
  • Objeto JSON del ID de cuenta del propietario.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "owner": "oaccount~d6d22c3167e3c6ab9ee5653e1a008c37c20cc47ebb0229ca0aedfafe64c675b8"
        },
        "encode": "JSON"
    }
}
post
Nombre del método original: post
Este método POST publica un token a la venta por un precio especificado.
Carga Útil:
{
    "tokenId": "{{bc-token-id}}",
    "sellingPrice": 1,
    "endorsers": {{endorsers}}
}
Parámetros:
  • tokenId: string: ID del token.
  • sellingPrice: number: precio del token.
  • endorsers: string[]: matriz de los peers (por ejemplo, peer1, peer2) que deben avalar la transacción.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "msg": "Token ID: 'monalisa'  has been posted for selling in the marketplace"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
removeRole
Nombre del método original: removeRole
Este método elimina un rol de un usuario especificado. Este método solo puede ser llamado por Token Admin del código de cadenas.
Carga Útil:
{
    "role": "role value (for example minter / burner)",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Parámetros:
  • role: string: nombre del rol que se va a eliminar del usuario especificado. Los comportamientos mintable y burnable corresponden a las propiedades minter_role_name y burner_role_name del archivo de especificación.
  • 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.
  • endorsers: string[]: matriz de los peers (por ejemplo, peer1, peer2) que deben avalar la transacción.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "msg": "Successfully removed role 'minter' from Account Id: oaccount~ec32cff8635a056f3dda3da70b1d6090d61f66c6a170c4a95fd008181f729dba (Org-Id: Org1MSP, User-Id: user1)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
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. Un administrador no puede eliminarse a sí mismo.
Carga Útil:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "sameOrgEndorser": true
}
Parámetros:
  • org_id: string: ID del proveedor de servicios de afiliación (MSP) del usuario en la organización actual.
  • user_id: string: nombre de usuario o ID de correo electrónico del usuario.
  • sameOrgEndorser: boolean: valor booleano que indica si los endosos de transacción deben ser de la misma organización que el solicitante.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "msg": "Successfully removed Admin (orgId: Org1MSP, userId: User1)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
removeTokenSysRole
Nombre del método original: removeTokenSysRole
Este método elimina un rol TokenSys de un usuario y token especificados. Este método solo puede ser llamado por Token Admin del código de cadenas.
Carga Útil:
{
    "role": "role value (for example vault)",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
Parámetros:
  • role: string: nombre del rol TokenSys que se va a eliminar del usuario especificado.
  • 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.
  • endorsers: string[]: matriz de los peers (por ejemplo, peer1, peer2) que deben avalar la transacción.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "msg": "Successfully removed role 'vault' from Account Id: oaccount~bf07f584a94be44781e49d9101bfaf58c6fbbe77a4dfebdb83c874c2caf03eba (Org-Id: Org1MSP, User-Id: user1)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
safeTransferFrom
Nombre del método original: safeTransferFrom
Es una función asíncrona. Este método POST transfiere la propiedad de la NFT especificada del emisor de llamada a otra cuenta. Este método incluye las siguientes validaciones:
  • La ficha existe y no se quema.
  • La cuenta de remitente y la cuenta de receptor existen y no son la misma cuenta.
  • La cuenta del remitente es propietaria del token.
  • El emisor de la función es el emisor.
Carga Útil:
{
    "fromOrgId": "fromOrgId value",
    "fromUserId": "fromUserId value",
    "toOrgId": "toOrgId value",
    "toUserId": "toUserId value",
    "tokenId": "{{bc-token-id}}",
    "data": "data 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.
  • tokenId: string: ID del token que se va a transferir.
  • data: string: información adicional opcional que se almacena en el registro de transacción.
  • endorsers: string[]: matriz de los peers (por ejemplo, peer1, peer2) que deben avalar la transacción.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "msg": "Successfully transferred NFT token: 'monalisa' from Account-Id:     oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d (Org-Id: Org1MSP, User-Id: admin) to Account-Id: oaccount~ec32cff8635a056f3dda3da70b1d6090d61f66c6a170c4a95fd008181f729dba (Org-Id: Org1MSP, User-Id: user1)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
suspendAccount
Nombre del método original: suspendAccount
Este método suspende una cuenta de token fungible. Devuelve un error si no se encuentra un valor accountStatus en el libro mayor. 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.
  • endorsers: string[]: matriz de los peers (por ejemplo, peer1, peer2) que deben avalar la transacción.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "assetType": "oaccountStatus",
            "statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
            "accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
            "status": "suspended"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
symbol
Nombre del método original: symbol
Este método devuelve el símbolo de la clase de token. Cualquiera puede llamar a este método.
Consulta:
/symbol
Parámetros:
  • ninguno
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "symbol": "PNT"
        },
        "encode": "JSON"
    }
}
tokenURI
Nombre del método original: tokenURI
Este método devuelve el URI de un token especificado. Cualquiera puede llamar a este método.
Consulta:
/tokenURI?tokenId={{bc-token-id}}
Parámetros:
  • tokenId: string: ID del token.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {   
            "tokenURI": "https://bafybeid6pmpp62bongoip5iy2skosvyxh3gr7r2e35x3ctvawjco6ddmsq\.ipfs.infura-ipfs.io/?filename=MonaLisa.jpeg"
        },
        "encode": "JSON"
    }
}
totalNetSupply
Nombre del método original: totalNetSupply
Este método GET devuelve el número total de tokens acuñados menos el número de tokens quemados. Este método solo puede ser llamado por Token Admin del código de cadenas.
/totalNetSupply
Parámetros:
  • ninguno
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "totalNetSupply": 1
        },
        "encode": "JSON"
    }
}
totalSupply
Nombre del método original: totalSupply
Este método GET devuelve el número total de tokens acuñados. Este método solo puede ser llamado por Token Admin del código de cadenas.
Consulta:
/totalSupply
Parámetros:
  • ninguno
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "totalSupply": 3
        },
        "encode": "JSON"
    }
}
transferFrom
Nombre del método original: transferFrom
Es una función asíncrona. Este método transfiere la propiedad de la NFT especificada de una cuenta de remitente a una cuenta de receptor. Es responsabilidad del emisor de la llamada pasar los parámetros correctos. Cualquier usuario puede llamar a este método, no solo el propietario del token. Este método incluye las siguientes validaciones:
  • La ficha existe y no se quema.
  • La cuenta de remitente y la cuenta de receptor existen y no son la misma cuenta.
  • La cuenta del remitente es propietaria del token.
Carga Útil:
{
    "fromOrgId": "fromOrgId value",
    "fromUserId": "fromUserId value",
    "toOrgId": "toOrgId value",
    "toUserId": "toUserId value",
    "tokenId": "{{bc-token-id}}",
    "endorsers": {{endorsers}}
}
Parámetros:
  • fromOrgId: string: ID del proveedor de servicios de membresía (MSP) del remitente en la organización actual.
  • fromUserId: string: nombre de usuario o ID de correo electrónico del remitente.
  • 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.
  • tokenId: string: ID del token que se va a transferir.
  • endorsers: string[]: matriz de los peers (por ejemplo, peer1, peer2) que deben avalar la transacción.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "msg": "Successfully transferred NFT token: 'monalisa' from Account-Id: oaccount~ec32cff8635a056f3dda3da70b1d6090d61f66c6a170c4a95fd008181f729dba (Org-Id: Org1MSP, User-Id: user1) to Account-Id: oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d (Org-Id: Org1MSP, User-Id: admin)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
transferTokenSysRole
Nombre del método original: transferTokenSysRole
Este método transfiere un rol TokenSys de un usuario a otro usuario.
Carga Útil:
{
    "role": "role value (for example vault)",
    "fromOrgId": "fromOrgId value",
    "fromUserId": "fromUserId value",
    "toOrgId": "toOrgId value",
    "toUserId": "toUserId value",
    "endorsers": {{endorsers}}
}
Parámetros:
  • role: string: nombre del rol TokenSys que se va a transferir.
  • fromOrgId: string: ID del proveedor de servicios de membresía (MSP) del remitente en la organización actual.
  • fromUserId: string: nombre de usuario o ID de correo electrónico del remitente.
  • 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.
  • endorsers: string[]: matriz de los peers (por ejemplo, peer1, peer2) que deben avalar la transacción.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "msg": "Successfully transfered role 'vault' from Account Id: ouaccount~f4e311528f03fffa7810753d643f66289ff6c9080fcf839902f28a1d3aff1789 (Org-Id: Org1MSP, User-Id: user1) to Account Id: ouaccount~ae5be2ae8f98d6d32f5d02b43877d987114e7937c7bacbc30390dcce09996a19 (Org-Id: Org1MSP, User-Id: user2)"
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}
updateArtCollectionToken
Nombre del método original: updateArtCollectionToken
Este método actualiza las propiedades del token. Después de crear un activo de token, solo el propietario del token puede actualizar las propiedades personalizadas del token. Si el usuario es propietario y creador de un token, también puede actualizar la propiedad TokenDesc. No se pueden actualizar los metadatos del token. Debe transferir todas las propiedades de token a este método, incluso si desea actualizar solo determinadas propiedades.
Carga Útil:
{
    "tokenAsset": "{\"tokenId\":\"{{bc-token-id}}\",\"tokenDesc\":\"tokenDesc value\",\"tokenUri\":\"tokenUri value\",\"Price\":999,\"On_Sale_Flag\":true}",
    "sameOrgEndorser": true
}
Parámetros:
  • tokenAsset: <Token Class>: activo de token que se va a actualizar. Para obtener más información sobre las propiedades del activo de token, consulte el archivo de especificación de entrada.
  • endorsers: string[]: matriz de los peers (por ejemplo, peer1, peer2) que deben avalar la transacción.
Ejemplo de Valor de Devolución:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "bd7416689b1acdace3c557faebbc0ad9a51671c10278ba6909350a6fe4b08eed",
        "payload": {
            "metadata": {
                "painting_name": "Mona_Lisa",
                "description": "Mona Lisa Painting",
                "image": "monalisa.jpeg",
                "painter_name": "Leonardo_da_Vinci"
            },
            "assetType": "otoken",
            "tokenId": "monalisa",
            "tokenName": "artcollection",
            "tokenDesc": "token description",
            "symbol": "ART",
            "tokenStandard": "erc721+",
            "tokenType": "nonfungible",
            "tokenUnit": "whole",
            "behaviors": [
                "indivisible",
                "singleton",
                "mintable",
                "transferable",
                "burnable",
                "roles"
            ],
            "roles": {
                "minter_role_name": "minter"
            },
            "mintable": {
                "max_mint_quantity": 20000
            },
            "owner": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
            "createdBy": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
            "creationDate": "2022-04-05T08:30:42.000Z",
            "isBurned": false,
            "tokenUri": "https://bafybeid6pmpp62bongoip5iy2skosvyxh3gr7r2e35x3ctvawjco6ddmsq\\.ipfs.infura-ipfs.io/?filename=MonaLisa.jpeg",
            "price": 100,
            "on_sale_flag": true
        },
        "encode": "JSON",
        "sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
        "blockNumber": 193
    }
}