-
registerOrg
- Nom de la méthode d'origine :
registerOrg
- Cette méthode POST enregistre une organisation dans le système. Cette méthode ne peut être appelée que par un administrateur de jeton.
- Charge utile:
{
"orgId": "{{bc-org-id}}",
"orgName": "org_name value",
"endorsers": {{endorsers}}
}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
orgName: string – (Facultatif) Nom de l'organisation.
endorsers: string[] : tableau des pairs (par exemple, peer1, peer2) qui doivent approuver la transaction.
- Exemple de valeur renvoyée :
{
"assetType": "oorgregistry",
"org_registry_id": "orgregistry",
"registered_orgs": [
{
"org_id": "Org1MSP",
"org_name": "Organisation name"
}
]
}
-
getAllRegisteredOrgs
- Nom de la méthode d'origine :
getAllRegisteredOrgs
- Cette méthode GET extrait les détails de toutes les organisations enregistrées. Cette méthode ne peut être appelée que par un administrateur de jeton.
- Interroger :
/getAllRegisteredOrgs
- Paramètres :
- Exemple de valeur renvoyée :
[
{
"org_id": "Org1MSP",
"org_name": "Organisation name"
}
]
-
activateAccount
- Nom de la méthode d'origine :
activateAccount
- Cette méthode POST active un compte de jeton. Cette méthode ne peut être appelée que par un administrateur ou un propriétaire de compte. Les comptes supprimés ne peuvent pas être activés.
- Charge utile:
{
"tokenId": "{{bc-token-id}}",
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Paramètres :
tokenId: string : ID du jeton.
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Renvoie :
- En cas de succès, une représentation JSON de l'objet de statut de compte pour le compte de jeton indiqué.
- Exemple de valeur renvoyée :
{
"assetType": "oaccountStatus",
"status_id": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"account_id": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "active"
}
-
addTokenAdmin
- Nom de la méthode d'origine :
addTokenAdmin
- Cette méthode POST ajoute d'autres administrateurs au code chaîne de jeton. Cette méthode ne peut être appelée que par l'administrateur de jeton du code chaîne.
- Charge utile:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Renvoie :
- En cas de réussite, message qui inclut les détails de l'utilisateur ajouté en tant que
Token Admin du code chaîne.
- Exemple de valeur renvoyée :
{
"msg": "Successfully added Admin (OrgId: appDev, UserId: user1)"
}
-
addRole
- Nom de la méthode d'origine :
addRole
- Cette méthode POST ajoute un rôle à un utilisateur et un jeton spécifiés. Cette méthode ne peut être appelée que par un élément
Token Admin du code chaîne. Les jetons non fongibles sont indiqués par le nom du jeton. L'utilisateur spécifié doit avoir un compte de jeton non fongible. Le rôle spécifié doit exister dans le fichier de spécification pour le jeton.
- Charge utile:
{
"tokenId": "{{bc-token-id}}",
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"role": "role minter/burner"
"tokenDetails": "{"tokenName": "token name value"}"
"endorsers": {{endorsers}}
}
- Paramètres :
- Renvoie :
- En cas de succès, un message contenant les détails du compte.
- Exemple de valeur renvoyée :
{
"msg": "Successfully added role 'minter' to Account Id: oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: idcqa)"
}
-
approveBondRedemption
- Nom de la méthode d'origine :
approveBondRedemption
- Cette méthode POST ne peut être appelée que par le créateur de jeton pour approuver une demande de rachat de jetons de liaison. L'opération d'approbation transfère le NFT de l'obligation du compte du propriétaire (l'utilisateur qui a émis la demande) au compte du créateur, et transfère les jetons CBDC du créateur de l'obligation au compte du propriétaire. Pour cette raison, cette méthode doit être exécutée dans le contexte d'une transaction atomique. La méthode vérifie également le processus de transfert, en s'assurant que le code chaîne CBDC approprié est appelé avec les éléments
orgId et userId corrects pour le transfert. Les valeurs orgId et userId doivent correspondre au compte du propriétaire du jeton qui a émis la demande de rachat, et la valeur de transfert du jeton CBDC doit être égale au prix de rachat calculé par le code chaîne lors de la génération de la demande de rachat.
- Charge utile:
{
"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}}
}
- Paramètres :
fromOrgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur.
fromUserId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
settlementId: string : ID de règlement pour l'opération d'échange.
tokenId: string : ID du jeton.
CBDCTokenId: string : ID du jeton dans le code chaîne CBDC.
CBDCOrgId: string : ID MSP de l'utilisateur dans le code chaîne CBDC.
CBDCUserId: string : nom utilisateur ou ID de courriel de l'utilisateur dans le code chaîne CBDC.
CBDCQuantity: string : quantité de jetons à transférer dans le code chaîne CBDC.
CBDCRemark: string : remarque pour le transfert dans le code chaîne CBDC, qui doit être au format indiqué précédemment.
- Exemple de valeur renvoyée :
{
"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
- Nom de la méthode d'origine :
balanceOfBatch
- Cette méthode GET termine une opération de batch qui obtient le solde des comptes de jetons. Les détails du compte sont indiqués dans trois listes distinctes d'ID d'organisation, d'ID utilisateur et d'ID de jeton. Cette méthode ne peut être appelée que par un élément
Token Admin du code chaîne ou par des propriétaires de compte. Les propriétaires de compte ne peuvent voir les détails du solde que pour les comptes qu'ils possèdent.
- Interroger :
/balanceOfBatch?orgIds=["{{bc-org-id}}"]&userIds=["{{bc-user-id}}"]&tokenIds=["{{bc-token-id}}"]
- Paramètres :
orgIds: string[] : liste des ID de fournisseur de services d'adhésion dans l'organisation actuelle.
userIds: string[] : liste des ID d'utilisateur ou d'e-mail.
tokenIds: string[] : liste des ID de jeton.
- Exemple de valeur renvoyée :
Dans l'exemple suivant, l'ID de jeton FNFT représente un jeton non fongible fractionnaire et l'ID de jeton FT représente un jeton fongible.
[
{
"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
- Nom de la méthode d'origine :
batchTransferFrom
- Cette méthode POST termine une opération batch qui transfère les jetons spécifiés dans une liste d'ID de jeton d'un utilisateur à un autre.
- Charge utile:
{
"fromOrgId": "fromOrgId value",
"fromUserId": "fromUserId value",
"toOrgId": "toOrgId value",
"toUserId": "toUserId value",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"endorsers": {{endorsers}}
}
- Paramètres :
fromOrgId: string : ID du fournisseur de services d'adhésion de l'expéditeur et du propriétaire du jeton dans l'organisation actuelle.
fromUserId: string : nom utilisateur ou ID de courriel de l'expéditeur et du propriétaire du jeton.
toOrgId: string – ID du prestataire de services d'adhésion (MSP) du destinataire dans l'organisation actuelle.
toUserId: string : nom d'utilisateur ou ID de courriel du destinataire.
tokenIds: string[] : liste des ID de jeton pour les jetons à transférer.
quantity: number[] : liste des quantités de jetons à transférer, correspondant au tableau d'ID de jeton.
- Renvoie :
- En cas de réussite, un message contenant les détails de chaque transfert de jeton.
- Exemple de valeur renvoyée :
[
{
"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
- Nom de la méthode d'origine :
burnBatch
- Cette méthode POST désactive ou brûle les jetons spécifiés. Tout utilisateur doté du rôle de brûleur peut appeler cette méthode.
- Charge utile:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"sameOrgEndorser": true
}
- Paramètres :
orgId: string – ID du fournisseur de services d'adhésion (MSP) dans l'organisation actuelle.
userId: string : nom utilisateur ou ID courriel.
tokenIds: string[] : liste des ID de jeton à graver
quantity: number[] : liste des quantités de jetons à graver, correspondant au tableau d'ID de jeton.
- Renvoie :
- En cas de réussite, un message contenant des détails sur les opérations de gravure.
- Exemple de valeur renvoyée :
[
{
"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
- Nom de la méthode d'origine :
createAccount
- Cette méthode POST crée un compte pour un utilisateur spécifié et les comptes de jetons associés pour les jetons. Un compte doit être créé pour tout utilisateur qui aura des jetons à tout moment. Le compte utilisateur suit le compte NFT et les comptes de jetons fongibles qu'un utilisateur détient. Les utilisateurs doivent avoir des comptes sur le réseau pour effectuer des opérations liées aux jetons. Cette méthode ne peut être appelée que par un élément
Token Admin du code chaîne.
Un compte utilisateur a un ID unique, qui est formé par un hachage SHA-256 du paramètre orgId et du paramètre userId.
Un utilisateur peut avoir plusieurs comptes de jetons fongibles avec des ID de compte uniques. Les ID de compte de jetons fongibles sont formés d'un hachage SHA-256 du paramètre orgId, du paramètre userId, de la chaîne constante ft séparée par le symbole tilde (~) et d'un nombre de compteurs qui signifie l'index du compte fongible créé séparé par le symbole tilde (~).
Un utilisateur ne peut avoir qu'un seul compte de jeton non fongible. Les ID de compte de jetons non fongibles sont uniques et sont formés par un hachage SHA-256 du paramètre orgId, du paramètre userId et de la chaîne constante nft, séparés par le symbole tilde (~). Tous les jetons non fongibles qu'un utilisateur possède, qu'ils soient entiers ou fractionnaires, sont liés à ce compte.
- Charge utile:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"ftAccount": true,
"nftAccount": true,
"endorsers": {{endorsers}}
}
- Paramètres :
orgId : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur pour lequel créer le compte. L'ID doit commencer par un caractère alphanumérique et peut inclure des lettres, des chiffres et des caractères spéciaux tels que des traits de soulignement (_), des points (.), des signes arobase (@) et des traits d'union (-).
userId : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur. L'ID doit commencer par un caractère alphanumérique et peut inclure des lettres, des chiffres et des caractères spéciaux tels que des traits de soulignement (_), des points (.), des signes arobase (@) et des traits d'union (-).
ftAccount: boolean : si la valeur est True, un compte de jeton fongible est créé et associé au compte utilisateur.
nftAccount: boolean : si la valeur est True, un compte de jeton non fongible est créé et associé au compte utilisateur.
- Renvoie :
- En cas de succès, objet JSON du compte créé.
- Exemple de valeur renvoyée :
{
"assetType": "ouaccount",
"accountId": "ouaccount~cf20877546f52687f387e7c91d88b9722c97e1a456cc0484f40c747f7804feae",
"userId": "user1",
"orgId": "appdev",
"totalAccounts": 2,
"totalFtAccounts": 1,
"associatedFtAccounts": [
{
"accountId": "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b",
"tokenId": ""
}
],
"associatedNftAccount": "oaccount~73c3e835dac6d0a56ca9d8def08269f83cefd59b9d297fe2cdc5a9083828fa58"
}
-
createAccountWithEnrollment
- Nom de la méthode d'origine :
createAccountWithEnrollment
- Cette méthode POST crée une inscription pour un utilisateur dans le proxy REST de l'instance et crée un compte NFT dans le code chaîne du marché des obligations.
- Charge utile:
{
"orgId": "orgId value",
"userId": "userId value"
}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Renvoie :
- En cas de succès, objet JSON du compte créé.
- Exemple de valeur renvoyée :
{
"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
- Nom de la méthode d'origine :
createBondToken
- Cette méthode POST crée des jetons. Chaque jeton défini possède sa propre méthode de création. Pour les jetons non fongibles, l'appelant de cette méthode devient le propriétaire du NFT. Si le comportement
roles est défini dans la propriété behaviors du modèle de jeton et qu'une valeur minter_role_name est indiquée, le compte de l'appelant doit avoir le rôle de mineur.
- Charge utile:
{
"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
}
- Paramètres :
tokenAsset: <Token Class> : ressource de jeton. Les propriétés de la ressource sont définies dans le fichier de modèle.
quantity: number : nombre de sèmes à extraire. La seule valeur prise en charge pour ce paramètre est 1.
- Renvoie :
- En cas de succès, objet JSON du compte créé.
- Exemple de valeur renvoyée :
{
"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"
}
-
createIDCSUser
- Nom de la méthode d'origine :
createIDCSUser
- Cette méthode POST crée un utilisateur Identity Cloud Service dans la location indiquée par l'URL dans le fichier
terraform.tfvars et affecte l'utilisateur au groupe d'utilisateurs indiqué.
- Charge utile:
{
"userName": "userName value",
"firstName": "firstName value",
"lastName": "lastName value",
"email": "email value",
"groupName": "groupName value"
}
- Paramètres :
userName: string : ID de l'utilisateur.
firstName: string : nom de l'utilisateur.
lastName: string – Nom de l'utilisateur.
email: string – Adresse électronique de l'utilisateur.
groupName: string : nom du groupe Identity Cloud Service à affecter à l'utilisateur.
- Exemple de valeur renvoyée :
{
"status": "Success",
"msg": "User user1 is created and assigned to the group BOND_ADMIN"
}
-
createTokenAccount
- Nom de la méthode d'origine :
createTokenAccount
- Cette méthode POST crée un compte de jeton fongible ou non fongible à associer à un compte utilisateur.
Un utilisateur peut avoir plusieurs comptes de jetons fongibles avec des ID de compte uniques. Les ID de compte de jetons fongibles sont formés d'un hachage SHA-256 du paramètre orgId, du paramètre userId, de la chaîne constante ft séparée par le symbole tilde (~) et d'un nombre de compteurs qui signifie l'index du compte fongible créé séparé par le symbole tilde (~).
Un utilisateur ne peut avoir qu'un seul compte de jeton non fongible. Les ID de compte de jetons non fongibles sont uniques et sont formés par un hachage SHA-256 du paramètre orgId, du paramètre userId et de la chaîne constante nft, séparés par le symbole tilde (~). Tous les jetons non fongibles qu'un utilisateur possède, qu'ils soient entiers ou fractionnaires, sont liés à ce compte.
Cette méthode ne peut être appelée que par un élément Token Admin du code chaîne.
- Charge utile:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenType": "nonfungible",
"endorsers": {{endorsers}}
}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
tokenType: TokenType : type de compte de jeton à créer. Les seuls types de jeton pris en charge sont nonfungible et fungible.
- Renvoie :
- En cas de succès, objet JSON du compte de jeton créé.
- Exemple de valeur renvoyée :
{
"assetType": "ouaccount",
"accountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc",
"userId": "user2",
"orgId": "appdev",
"totalAccounts": 1,
"totalFtAccounts": 1,
"associatedFtAccounts": [
{
"accountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
"tokenId": ""
}
],
"associatedNftAccount": ""
}
-
createUserAccount
- Nom de la méthode d'origine :
createUserAccount
- Cette méthode POST crée un compte pour l'utilisateur spécifié. Un compte doit être créé pour tout utilisateur qui aura des jetons à tout moment. Le compte utilisateur suit le compte NFT et les comptes de jetons fongibles dont dispose un utilisateur. Les utilisateurs doivent avoir des comptes sur le réseau pour effectuer des opérations liées aux jetons.
Un ID de compte est un hachage SHA-256 du paramètre orgId et du paramètre userId. Cette méthode ne peut être appelée que par un élément Token Admin du code chaîne.
- Charge utile:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Renvoie :
- En cas de succès, objet JSON du compte utilisateur créé.
- Exemple de valeur renvoyée :
{
"assetType": "ouaccount",
"accountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc",
"userId": "user2",
"orgId": "appdev",
"totalAccounts": 0,
"totalFtAccounts": 0,
"associatedFtAccounts": [],
"associatedNftAccount": ""
}
-
deleteAccount
- Nom de la méthode d'origine :
deleteAccount
- Cette méthode POST supprime un compte de jeton. Cette méthode ne peut être appelée que par un élément
Token Admin du code chaîne. Cette méthode génère une erreur si aucune valeur accountStatus n'est trouvée pour le compte dans le livre.
- Charge utile:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Renvoie :
- En cas de succès, une représentation JSON du statut du compte de jeton.
- Exemple de valeur renvoyée :
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "deleted"
}
-
getAccount
- Nom de la méthode d'origine :
getAccount
- Cette méthode GET renvoie les détails du compte de jeton pour un utilisateur spécifié. Cette méthode ne peut être appelée que par une chaîne (
Token Admin) du code chaîne ou par la chaîne (Account Owner) du compte.
- Interroger :
/getAccount?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
tokenId?: string : pour un compte de jeton non fongible, chaîne vide. Pour un compte de jeton fongible, ID de jeton.
- Renvoie :
- En cas de succès, objet JSON qui inclut les détails du compte de jeton.
- Exemple de valeur renvoyée
{
"assetType": "oaccount",
"accountId": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
"userId": "user2",
"orgId": "AppBldFFFFMay22",
"tokenType": "nonfungible",
"noOfNfts": 3
}
-
getAccountBondSummary
- Nom de la méthode d'origine :
getAccountBondSummary
- Cette méthode GET renvoie un récapitulatif de compte pour l'utilisateur spécifié, y compris les détails des jetons achetés ou échangés et leurs prix d'achat et d'échange.
- Interroger :
/getAccount?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Renvoie :
- En cas de succès, objet JSON qui inclut le récapitulatif du compte de jetons.
- Exemple de valeur renvoyée
[
{
"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
- Nom de la méthode d'origine :
getAccountBondSummaryWithPagination
- Cette méthode GET renvoie un récapitulatif de compte pour l'utilisateur spécifié, y compris les détails des jetons achetés ou échangés et leurs prix d'achat et d'échange. Cette méthode peut renvoyer des résultats avec pagination basée sur les valeurs de taille de page et de signet, ainsi que filtrés par heure de début et heure de fin.
- Interroger :
/getAccountBondSummary?orgId={{bc-org-id}}&userId={{bc-user-id}}&pageSize=1&bookmark={{bookmark}}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
pageSize: number : taille de page du résultat renvoyé.
bookmark: string : signet du résultat renvoyé.
- Renvoie :
- En cas de succès, objet JSON qui inclut le récapitulatif du compte de jetons.
- Exemple de valeur renvoyée
[
{
"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
- Nom de la méthode d'origine :
getAccountDetailsByUser
- Cette méthode GET renvoie un récapitulatif de compte pour un utilisateur spécifié et les détails des jetons fongibles et non fongibles associés à l'utilisateur. Cette méthode ne peut être appelée que par une chaîne (
Token Admin) du code chaîne ou par la chaîne (Account Owner) du compte.
- Interroger :
/getAccountDetailsByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Renvoie :
- En cas de succès, objet de compte JSON qui inclut et récapitule le compte pour l'utilisateur indiqué, ainsi que les détails des jetons fongibles et non fongibles associés à l'utilisateur. Pour les jetons fractionnaires non fongibles, la propriété
tokenShare de la section associatedNFTs affiche le partage dont l'utilisateur est propriétaire.
- Exemple de valeur renvoyée :
{
"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
- Nom de la méthode d'origine :
getAccountStatus
- Cette méthode GET extrait le statut actuel du compte de jeton. Cette méthode peut être appelée par l'élément
Token Admin du code chaîne ou par le propriétaire du compte de jeton.
- Interroger :
/getAccountStatus?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Renvoie :
- En cas de succès, une représentation JSON du statut du compte de jeton.
- Exemple de valeur renvoyée :
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "active"
}
-
getAccountStatusHistory
- Nom de la méthode d'origine :
getAccountStatusHistory
- Cette méthode GET extrait l'historique du statut du compte. Cette méthode peut être appelée par l'élément
Token Admin du code chaîne ou par le propriétaire du compte de jeton.
- Interroger :
/getAccountStatusHistory?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Renvoie :
- En cas de succès, l'historique du statut du compte au format JSON.
- Exemple de valeur renvoyée :
[
{
"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
- Nom de la méthode d'origine :
getAccountTransactionHistory
- Cette méthode GET renvoie l'historique des transactions de compte. Cette méthode ne peut être appelée que par un élément
Token Admin du code chaîne ou par le propriétaire du compte.
/getAccountTransactionHistory?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Exemple de valeur renvoyée :
[
{
"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
- Nom de la méthode d'origine :
getAccountsByRole
- Cette méthode GET renvoie la liste de tous les ID de compte pour un rôle et un jeton spécifiés.
- Interroger :
/getAccountsByRole?role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Paramètres :
role: string : nom du rôle à rechercher.
tokenDetail: JSON : pour les jetons fongibles, ID de jeton. Pour les jetons non fongibles, le nom de jeton obligatoire.
- Exemple de valeur renvoyée :
{
"accounts": [
"oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
"oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b"
]
}
-
getAllAccounts
- Nom de la méthode d'origine :
getAllAccounts
- Cette méthode GET renvoie les détails de tous les comptes utilisateur. Cette méthode ne peut être appelée que par un élément
Token Admin du code chaîne.
- Interroger :
/getAllAccounts
- Paramètres :
- Renvoie :
- En cas de succès, un tableau JSON de tous les comptes.
- Exemple de valeur renvoyée :
[
{
"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
- Nom de la méthode d'origine :
getAllTokenAdmins
- Cette méthode GET renvoie la liste de tous les utilisateurs qui sont un élément
Token Admin du code chaîne. Cette méthode ne peut être appelée que par un élément Token Admin du code chaîne.
- Interroger :
/getAllTokenAdmins
- Paramètres :
- Renvoie :
- En cas de réussite, tableau
admins au format JSON contenant les objets orgId et userId.
- Exemple de valeur renvoyée :
{
"admins": [
{
"orgId": "appdev",
"userId": "user2"
},
{
"orgId": "appdev",
"userId": "user1"
}
]
}
-
getAllTokens
- Nom de la méthode d'origine :
getAllTokens
- Cette méthode renvoie toutes les ressources de jeton enregistrées dans la base de données d'état. Cette méthode ne peut être appelée que par un élément
Token Admin du code chaîne. Cette méthode utilise des requêtes enrichies Berkeley DB SQL et ne peut être appelée qu'en cas de connexion au réseau distant Oracle Blockchain Platform.
/getAllTokens
- Paramètres :
- Renvoie :
- Liste de toutes les ressources de jeton au format JSON.
- Exemple de valeur renvoyée :
[{
"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
- Nom de la méthode d'origine :
getAllTokensByUser
- Cette méthode GET renvoie toutes les ressources de jeton détenues par un utilisateur spécifié. Cette méthode utilise des requêtes enrichies Berkeley DB SQL et ne peut être appelée qu'en cas de connexion au réseau distant Oracle Blockchain Platform. Cette méthode ne peut être appelée que par un élément
Token Admin du code chaîne ou par le propriétaire du compte.
- Interroger :
/getAllTokensByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Exemple de valeur renvoyée :
[{
"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
- Nom de la méthode d'origine :
getAllTokensWithFilters
- L'administrateur peut appeler cette méthode GET pour extraire tous les jetons filtrés par statut.
- Interroger :
/getAllTokensWithFilters?status=status&pageSize=pageSize&bookmark=bookmark
- Paramètres :
status: string : statut du jeton, qui peut être CREATED ou POSTED.
pageSize: number : taille de page du résultat renvoyé.
bookmark: string : signet du résultat renvoyé.
- Exemple de valeur renvoyée :
[{
"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
- Nom de la méthode d'origine :
getTokenApprovalRequestByUser
- Tout titulaire de compte peut appeler cette méthode GET pour obtenir les détails de toutes les demandes d'approbation de jeton (demandes de rachat) qu'il a effectuées.
- Interroger :
/getTokenApprovalRequestByUser?status=status value
- Paramètres :
status: string : statut de la demande, à savoir PENDING, REJECTED ou APPROVED.
- Exemple de valeur renvoyée :
[
{
"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
- Nom de la méthode d'origine :
getTokenApprovalRequestByUser
- Tout titulaire de compte peut appeler cette méthode GET pour obtenir les détails de toutes les demandes d'approbation de jeton (demandes de rachat) qu'il a effectuées.
- Interroger :
/getTokenApprovalRequestForUserByStatus?status=status value
- Paramètres :
status: string : statut de la demande, à savoir PENDING, REJECTED ou APPROVED.
- Exemple de valeur renvoyée :
[
{
"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
- Nom de la méthode d'origine :
getTokenById
- Cette méthode GET renvoie un objet de jeton si le jeton est présent dans la base de données d'état. Pour les NFT fractionnaires, la liste des propriétaires est également renvoyée. Cette méthode ne peut être appelée que par un élément
Token Admin du code chaîne ou du propriétaire du jeton.
- Interroger :
/getTokenById?tokenId={{bc-token-id}}
- Paramètres :
tokenId: string : ID du jeton à obtenir.
- Exemple de valeur renvoyée :
[{
"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
- Nom de la méthode d'origine :
getTokenHistory
- Cette méthode GET renvoie l'historique d'un ID de jeton spécifié.
- Interroger :
/getTokenHistory?tokenId={{bc-token-id}}
- Paramètres :
tokenId: string : ID du jeton.
- Renvoie :
- En cas de succès, tableau JSON contenant l'historique des jetons.
- Exemple de valeur renvoyée :
[{
"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
- Nom de la méthode d'origine :
getUsersByRole
- Cette méthode renvoie la liste de tous les utilisateurs pour un rôle et un jeton spécifiés. Cette méthode ne peut être appelée que par un élément
Token Admin du code chaîne.
- Interroger :
/getUsersByRole?role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Paramètres :
role: string : nom du rôle à rechercher.
tokenDetail: JSON : pour les jetons fongibles, ID de jeton. Pour les jetons non fongibles, le nom de jeton obligatoire.
- Exemple de valeur renvoyée :
{
"users": [
{
"accountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
"orgId": "appdev",
"userId": "user2"
},
{
"accountId": "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b",
"orgId": "appdev",
"userId": "user1"
}
]
}
-
init
- Nom de la méthode d'origine :
init
- Cette méthode POST est appelée lorsque le code chaîne est instancié. Chaque élément
Token Admin est identifié par les informations userId et orgId dans le paramètre adminList. userId est le nom utilisateur ou l'ID courriel du propriétaire de l'instance ou de l'utilisateur qui est connecté à l'instance. orgId est l'ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation réseau actuelle. Le paramètre adminList est obligatoire la première fois que vous déployez le code chaîne. Si vous mettez à niveau le code chaîne, transmettez une liste vide ([]). Si vous êtes l'utilisateur qui a initialement déployé le code chaîne, vous pouvez également indiquer de nouveaux administrateurs dans le paramètre adminList lorsque vous mettez à niveau le code chaîne. Toutes les autres informations du paramètre adminList sont ignorées lors des mises à niveau.
- Charge utile:
{
"adminList": "[{\"orgId\":\"{{bc-org-id}}\",\"userId\":\"{{bc-user-id}}\"}]"
}
- Paramètres :
adminList array : tableau d'informations {orgId, userId} qui indique la liste des administrateurs de jetons. Le tableau adminList est un paramètre obligatoire.
- Renvoie :
- En cas de succès, message sans charge utile.
- Exemple de valeur renvoyée :
{
}
-
isInRole
- Nom de la méthode d'origine :
isInRole
- Cette méthode GET renvoie une valeur booléenne pour indiquer si un utilisateur a un rôle spécifié. Les jetons non fongibles sont indiqués par le nom du jeton. Cette méthode ne peut être appelée que par une chaîne (
Token Admin) du code chaîne ou par la chaîne (Account Owner) du compte. L'utilisateur spécifié doit disposer d'un compte de jeton associé au jeton fongible ou d'un compte de jeton non fongible pour les rôles NFT. Le rôle spécifié doit exister dans le fichier de spécification pour le jeton.
- Interroger :
/isInRole?orgId={{bc-org-id}}&userId={{bc-user-id}}&role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Paramètres :
- Exemple de valeur renvoyée :
{
"result": true,
"msg": "Account Id oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: idcqa) has minter role"
}
-
isTokenAdmin
- Nom de la méthode d'origine :
isTokenAdmin
- Cette méthode GET renvoie la valeur booléenne
true si l'appelant de la fonction est un Token Admin, sinon elle renvoie false. Cette méthode ne peut être appelée que par un élément Token Admin du code chaîne.
/isTokenAdmin?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Renvoie :
- La méthode renvoie
true si l'appelant est un Token Admin, sinon elle renvoie false.
- Exemple de valeur renvoyée :
{"result": true}
-
mintBatch
- Nom de la méthode d'origine :
mintBatch
- Cette méthode POST crée (minte) plusieurs jetons dans une opération batch. Cette méthode crée uniquement des jetons fongibles ou des jetons non fongibles fractionnaires.
Pour les jetons fongibles, si le rôle minter est défini dans le fichier de spécification, tout utilisateur doté du rôle minter peut appeler cette méthode. Sinon, n'importe quel utilisateur peut utiliser cette méthode pour extraire des jetons. Vous ne pouvez pas dépasser la propriété max_mint_quantity du jeton, si cette propriété a été spécifiée lors de la création ou de la mise à jour du jeton.
Pour les jetons non fongibles, si le rôle mineur est défini dans le fichier de spécification, tout utilisateur doté du rôle mineur peut appeler cette méthode. Sinon, n'importe quel utilisateur peut utiliser cette méthode pour extraire des jetons. En outre, l'appelant doit également être le créateur du jeton. Il n'y a pas de limite supérieure à la quantité de jetons non fongibles fractionnaires qui peuvent être extraits.
Vous ne pouvez pas utiliser cette méthode pour extraire un jeton non fongible entier.
- Charge utile:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"sameOrgEndorser": true
}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
tokenIds: string[] : liste des ID de jeton pour lesquels extraire des jetons.
quantity: number[] : liste des quantités de jetons à extraire, correspondant au tableau d'ID de jeton.
- Renvoie :
- En cas de succès, objet JSON qui inclut des détails sur les jetons extraits.
- Exemple de valeur renvoyée :
{
"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
- Nom de la méthode d'origine :
ownerOf
- Cette méthode GET renvoie l'ID de compte, l'ID d'organisation et l'ID utilisateur du propriétaire de l'ID de jeton spécifié. Tout le monde peut appeler cette méthode.
- Interroger :
/ownerOf?tokenId={{bc-token-id}}
- Paramètres :
tokenId: string : ID du jeton.
- Exemple de valeur renvoyée :
[
{
"accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
"orgId": "Org1MSP",
"userId": "admin"
},
{
"accountId": "oaccount~74108eca702bab6d8548e740254f2cc7955d886885251d52d065042172a59db0",
"orgId": "Org1MSP",
"userId": "user"
}
]
-
payInterest
- Nom de la méthode d'origine :
ownerOf
- Cette méthode POST ne peut être appelée que par le créateur de jeton ou l'administrateur pour payer les intérêts gagnés sur le jeton d'obligation. Cette méthode ne peut être appelée que si la fréquence d'intérêt du jeton est mensuelle, trimestrielle ou annuelle. Les intérêts ne peuvent pas être payés si la fréquence des intérêts est à l'échéance. Les intérêts sont calculés par le code chaîne en fonction du taux de coupon du jeton. L'opération d'achat transfère les jetons CBDC du compte de l'appelant vers le compte du propriétaire de l'obligation. Pour cette raison, cette méthode doit être exécutée dans le contexte d'une transaction atomique. La méthode vérifie également le processus de transfert, en s'assurant que le code chaîne CBDC approprié est appelé avec les éléments
orgId et userId corrects pour le transfert. Les éléments orgId et userId doivent correspondre au propriétaire du jeton et la valeur de transfert du jeton CBDC doit être égale à l'intérêt calculé par le code chaîne de liaison.
- Charge utile:
{
"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}}
}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
tokenId: string : ID du jeton.
orderId: string : ID de commande de l'opération.
CBDCTokenId: string : ID du jeton dans le code chaîne CBDC.
CBDCOrgId: string : ID MSP de l'utilisateur dans le code chaîne CBDC.
CBDCUserId: string : nom utilisateur ou ID de courriel de l'utilisateur dans le code chaîne CBDC.
CBDCQuantity: string : quantité de jetons à transférer dans le code chaîne CBDC.
CBDCRemark: string : remarque pour le transfert dans le code chaîne CBDC, qui doit être au format indiqué précédemment.
- Exemple de valeur renvoyée :
{
"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
- Nom de la méthode d'origine :
postBondToken
- Cette méthode POST ne peut être appelée que par un créateur de jeton. La méthode soumet le jeton d'obligation pour inscription sur le marché. Lorsqu'un jeton est créé, son statut est initialement défini sur
created. Cette méthode met à jour le statut sur posted. Les utilisateurs peuvent exécuter la méthode getAllTokensWithFilter pour extraire tous les NFT ayant le statut posted.
- Charge utile:
{
"tokenId": "{{bc-token-id}}",
"sameOrgEndorser": true
}
- Paramètres :
tokenId: string : ID du jeton à publier.
- Exemple de valeur renvoyée :
{
"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
- Nom de la méthode d'origine :
purchaseBondToken
- Cette méthode POST peut être appelée par n'importe quel titulaire de compte pour acheter une NFT obligataire cotée. L'achat transfère la NFT obligataire du compte du créateur vers le compte de l'appelant, et transfère les jetons CBDC du compte de l'appelant vers le compte du créateur. Pour cette raison, la méthode doit être exécutée dans le contexte d'une transaction atomique. La méthode vérifie également le processus de transfert, en s'assurant que le code chaîne CBDC approprié est appelé avec les éléments
orgId et userId corrects pour le transfert. Les valeurs orgId et userId doivent correspondre au créateur du jeton, et la valeur de transfert du jeton CBDC doit être égale à la valeur nominale du jeton d'obligation multipliée par la quantité achetée, plus les frais supplémentaires.
- Charge utile:
{
"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}}
}
- Paramètres :
tokenId: string : ID du jeton à acheter.
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
settlementId: string : ID de règlement de l'opération.
CBDCTokenId: string : ID du jeton dans le code chaîne CBDC.
CBDCOrgId: string : ID MSP de l'utilisateur dans le code chaîne CBDC.
CBDCUserId: string : nom utilisateur ou ID de courriel de l'utilisateur dans le code chaîne CBDC.
CBDCQuantity: string : quantité de jetons à transférer dans le code chaîne CBDC.
CBDCRemark: string : remarque pour le transfert dans le code chaîne CBDC, qui doit être au format indiqué précédemment.
- Exemple de valeur renvoyée :
{
"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
- Nom de la méthode d'origine :
rejectBondRedemption
- Le créateur du jeton peut appeler cette méthode POST pour rejeter la demande d'échange. Les propriétaires de jetons peuvent relancer une demande d'échange en utilisant un autre ID de règlement.
- Charge utile:
{
"fromOrgId": "fromOrgId value",
"fromUserId": "fromUserId value",
"settlementId": "settlementId value",
"tokenId": "{{bc-token-id}}",
"endorsers": {{endorsers}}
}
- Paramètres :
fromOrgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur.
fromUserId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
settlementId: string : ID de règlement pour l'opération d'échange.
tokenId: string : ID du jeton.
- Exemple de valeur renvoyée :
{
"status":"success",
"msg":"Successfully rejected the token approval request"
}
-
removeRole
- Nom de la méthode d'origine :
removeRole
- Cette méthode POST supprime un rôle d'un utilisateur et d'un jeton spécifiés. Les jetons fongibles sont spécifiés par l'ID de jeton. Les jetons non fongibles sont indiqués par le nom du jeton. Cette méthode ne peut être appelée que par un élément
Token Admin du code chaîne.
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"role": "role value (for example minter / burner)",
"tokenDetail": "{\"tokenName\":\"tokenName value\"}",
"endorsers": {{endorsers}}
}
- Paramètres :
- Exemple de valeur renvoyée :
{
"msg": "Successfully removed role 'minter' from Account Id: oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b (Org-Id: appdev, User-Id: user1)"
}
-
removeTokenAdmin
- Nom de la méthode d'origine :
removeTokenAdmin
- Cette méthode POST enlève un utilisateur en tant qu'utilisateur
Token Admin du code chaîne. Cette méthode ne peut être appelée que par un élément Token Admin du code chaîne. Vous ne pouvez pas vous enlever vous-même en tant que Token Admin.
- Charge utile:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"sameOrgEndorser": true
}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Renvoie :
- En cas de réussite, message qui inclut les détails de l'utilisateur qui a été enlevé en tant que
Token Admin du code chaîne.
- Exemple de valeur renvoyée :
{"msg": "Successfully removed Admin (OrgId: appDev, UserId: user1)"}
-
requestBondRedemption
- Nom de la méthode d'origine :
requestBondRedemption
- Cette méthode POST ne peut être appelée que par le propriétaire du jeton pour lancer une demande de remboursement de jetons d'obligation après maturité. Cette méthode implique également le calcul du prix de rachat par le code chaîne. Les demandes d'échange ne peuvent être émises que sur la totalité du jeton d'obligation dont l'utilisateur est propriétaire. Les utilisateurs peuvent générer plusieurs demandes d'échange en fonction de différents ID de règlement, mais une seule peut être approuvée par le créateur du jeton.
- Charge utile:
{
"settlementId": "settlementId value",
"tokenId": "{{bc-token-id}}",
"orderId": "orderId value",
"additionalFees": 1,
"endorsers": {{endorsers}}
}
- Paramètres :
settlementId: string : ID de règlement pour l'opération d'échange.
tokenId: string : ID du jeton.
orderId: string – ID de commande pour l'opération d'achat.
additionalFees: number – Les frais supplémentaires à ajouter au prix de rachat.
- Exemple de valeur renvoyée :
{
"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
- Nom de la méthode d'origine :
safeBatchTransferFrom
- Cette méthode POST termine une opération batch qui transfère les jetons spécifiés dans une liste d'ID de jeton d'un utilisateur à un autre.
Pour les NFT, étant donné que la méthode transfère la propriété de la NFT, l'expéditeur de la NFT doit posséder le jeton.
Pour les NFT fractionnaires, si un utilisateur (y compris le créateur du jeton) transfère tous les partages qu'il possède, il perd la propriété du jeton. Si un partage d'un jeton est transféré à un utilisateur, cet utilisateur devient automatiquement l'un des propriétaires de la NFT fractionnaire.
L'appelant de la méthode doit être l'expéditeur spécifié.
{
"fromOrgId": "fromOrgId value",
"fromUserId": "fromUserId value",
"toOrgId": "toOrgId value",
"toUserId": "toUserId value",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"endorsers": {{endorsers}}
}
- Paramètres :
fromOrgId: string : ID du fournisseur de services d'adhésion de l'expéditeur et du propriétaire du jeton dans l'organisation actuelle.
fromUserId: string : nom utilisateur ou ID de courriel de l'expéditeur et du propriétaire du jeton.
toOrgId: string – ID du prestataire de services d'adhésion (MSP) du destinataire dans l'organisation actuelle.
toUserId: string : nom d'utilisateur ou ID de courriel du destinataire.
tokenIds: string[] : liste des ID de jeton pour les jetons à transférer.
quantity: number[] : liste des quantités de jetons à transférer, correspondant au tableau d'ID de jeton.
- Renvoie :
- En cas de réussite, un message contenant les détails de chaque transfert de jeton.
- Exemple de valeur renvoyée :
[
{
"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
- Nom de la méthode d'origine :
suspendAccount
- Cette méthode POST suspend un compte de jeton. Cette méthode ne peut être appelée que par un élément
Token Admin du code chaîne. Une fois qu'un compte est suspendu, vous ne pouvez effectuer aucune opération de mise à jour du compte. Un compte supprimé ne peut pas être suspendu.
- Charge utile:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Paramètres :
orgId: string : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur dans l'organisation actuelle.
userId: string : nom d'utilisateur ou ID d'adresse électronique de l'utilisateur.
- Renvoie :
- En cas de succès, une représentation JSON du statut du compte de jeton.
- Exemple de valeur renvoyée :
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "suspended"
}
-
updateBondToken
- Nom de la méthode d'origine :
updateBondToken
- Cette méthode POST met à jour les jetons. Chaque jeton défini possède sa propre méthode de mise à jour. Vous ne pouvez pas mettre à jour les métadonnées de jeton ou l'URI de jeton des jetons non fongibles. Cette méthode ne peut être appelée que par le propriétaire du jeton.
- Charge utile:
{
"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
}
- Paramètres :
tokenAsset: <Token Class> : ressource de jeton. Les propriétés de la ressource sont définies dans le fichier de modèle.
- Renvoie :
- En cas de réussite, la ressource de jeton mise à jour au format JSON.
- Exemple de valeur de retour (NFT entier)
{
"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
- Nom de la méthode d'origine :
URI
- Cette méthode renvoie l'URI d'un jeton spécifié.
- Interroger :
/URI?tokenId={{bc-token-id}}
- Paramètres :
tokenId: string : ID du jeton.
- Exemple de valeur renvoyée :
{
"tokenUri": "example.com"
}