-
activateAccount
- Nome metodo originale:
activateAccount
- Questo metodo POST attiva un account token. Questo metodo può essere richiamato solo da un amministratore o dal proprietario dell'account. Impossibile attivare gli account eliminati.
- Payload:
{
"tokenId": "{{bc-token-id}}",
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parametri:
tokenId: string
: l'ID del token.
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, una rappresentazione JSON dell'oggetto stato account per l'account token specificato.
- Esempio di valore restituito:
{
"assetType": "oaccountStatus",
"status_id": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"account_id": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "active"
}
-
addTokenAdmin
- Nome metodo originale:
addTokenAdmin
- Questo metodo POST aggiunge altri amministratori al codice concatenato del token. Questo metodo può essere richiamato solo dall'amministratore token del codice concatenato.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, un messaggio che include i dettagli dell'utente aggiunto come
Token Admin
del codice concatenato.
- Esempio di valore restituito:
{
"msg": "Successfully added Admin (OrgId: appDev, UserId: user1)"
}
-
addRole
- Nome metodo originale:
addRole
- Questo metodo POST aggiunge un ruolo a un utente e a un token specificati. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato. I token non fungibili sono specificati dal nome del token. L'utente specificato deve disporre di un account token non fungibile. Il ruolo specificato deve esistere nel file di specifica per il token.
- Payload:
{
"tokenId": "{{bc-token-id}}",
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"role": "role minter/burner"
"tokenDetails": "{"tokenName": "token name value"}"
"endorsers": {{endorsers}}
}
- Parametri:
- Restituisce:
- In caso di operazione riuscita, un messaggio con i dettagli dell'account.
- Esempio di valore restituito:
{
"msg": "Successfully added role 'minter' to Account Id: oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: idcqa)"
}
-
approveBondRedemption
- Nome metodo originale:
approveBondRedemption
- Questo metodo POST può essere chiamato solo dal creatore del token per approvare una richiesta di riscatto dei token obbligazionari. L'operazione di approvazione trasferisce l'NFT dell'obbligazione dal conto del proprietario (l'utente che ha inoltrato la richiesta) al conto del creatore e trasferisce i token CBDC dal conto del creatore dell'obbligazione al conto del proprietario. Per questo motivo, questo metodo deve essere eseguito nel contesto di una transazione atomica. Il metodo verifica anche il processo di trasferimento, garantendo che il codice concatenato CBDC appropriato sia chiamato con i corretti
orgId
e userId
per il trasferimento. I valori orgId
e userId
devono corrispondere al conto del proprietario del token che ha generato la richiesta di riscatto e il valore di trasferimento del token CBDC deve essere uguale al prezzo di riscatto calcolato calcolato dal codice concatenato durante la generazione della richiesta di riscatto.
- Payload:
{
"fromOrgId": "fromOrgId value",
"fromUserId": "fromUserId value",
"settlementId": "settlementId value",
"tokenId": "{{bc-token-id}}",
"CBDCTokenId": "CBDCTokenId value",
"CBDCFromOrgId": "CBDCFromOrgId value",
"CBDCFromUserId": "CBDCFromUserId value",
"CBDCQuantity": 0,
"CBDCRemark": "{\\\"category\\\":\\\"category value\\\",\\\"description\\\":\\\"description value\\\"}",
"endorsers": {{endorsers}}
}
- Parametri:
fromOrgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente.
fromUserId: string
: il nome utente o l'ID e-mail dell'utente.
settlementId: string
: l'ID liquidazione per l'operazione di riscatto.
tokenId: string
: l'ID del token.
CBDCTokenId: string
: l'ID del token nel codice concatenato CBDC.
CBDCOrgId: string
: l'ID MSP dell'utente nel codice concatenato CBDC.
CBDCUserId: string
: il nome utente o l'ID e-mail dell'utente nel codice concatenato CBDC.
CBDCQuantity: string
: la quantità di token da trasferire nel codice concatenato CBDC.
CBDCRemark: string
- Un'osservazione per il trasferimento nel codice concatenato CBDC, che deve essere nel formato mostrato in precedenza.
- Esempio di valore restituito:
{
"returnCode":"Success",
"error":"",
"result":{
"transactions":[
{
"channel":"test",
"chaincode":"BondMarketplace",
"txstatus":"Committed",
"prepare":{
"txid":"e969f962df5efda2ea6287380e308cc974efd79dfff3567840ed3844bf936160"
},
"commit":{
"txid":"5544e928d3242291fb39189e8329679a9c81d61d6f72db60ca89135cd20fffef"
},
"rollback":{
}
},
{
"channel":"cbdctest",
"chaincode":"cbdc",
"txstatus":"Committed",
"prepare":{
"txid":"1245885b1a0c7f12c41fa2f2905549b8a5f37ab3a5e094b9dca122cb0611a117"
},
"commit":{
"txid":"3c83e20c7d470cdc9c1b0e2e0ea8d9962d58ada8d1b8f0d2606c8aa1f0ae7741"
},
"rollback":{
}
}
],
"lrc":{
},
"globalStatus":"Success",
"globalTxid":"761bb7cc-1d66-4645-aeb2-50e4dbd23d83",
"txStartTime":"2024-12-05T12:01:21.881988035Z"
}
}
-
balanceOfBatch
- Nome metodo originale:
balanceOfBatch
- Questo metodo GET completa un'operazione batch che recupera il saldo dei conti token. I dettagli dell'account sono specificati in tre elenchi separati di ID organizzazione, ID utente e ID token. Questo metodo può essere chiamato solo da un
Token Admin
del codice concatenato o dai proprietari di account. I proprietari dei conti possono visualizzare i dettagli del saldo solo per i conti di loro proprietà.
- Query:
/balanceOfBatch?orgIds=["{{bc-org-id}}"]&userIds=["{{bc-user-id}}"]&tokenIds=["{{bc-token-id}}"]
- Parametri:
orgIds: string[]
: elenco degli ID del provider di servizi di appartenenza (MSP) nell'organizzazione corrente.
userIds: string[]
: elenco del nome utente o degli ID di posta elettronica.
tokenIds: string[]
: lista degli ID token.
- Esempio di valore restituito:
Nell'esempio seguente, l'ID token FNFT
rappresenta un token non fungibile frazionario e l'ID token FT
rappresenta un token fungibile.
[
{
"orgId": "appdev",
"userId": "idcqa",
"userAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"tokenAccountId": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
"tokenId": "FNFT",
"balance": 100
},
{
"orgId": "appdev",
"userId": "idcqa",
"userAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"tokenAccountId": "oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e",
"tokenId": "FT",
"balance": 50
},
{
"orgId": "appdev",
"userId": "user1_minter",
"userAccountId": "ouaccount~9501bb774c156eb8354dfe489250ea91f757523d70f08ee494bda98bb352003b",
"tokenAccountId": "oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446",
"tokenId": "FNFT",
"balance": 10
}
]
-
batchTransferFrom
- Nome metodo originale:
batchTransferFrom
- Questo metodo POST completa un'operazione batch che trasferisce i token specificati in una lista di ID token da un utente a un altro utente.
- Payload:
{
"fromOrgId": "fromOrgId value",
"fromUserId": "fromUserId value",
"toOrgId": "toOrgId value",
"toUserId": "toUserId value",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"endorsers": {{endorsers}}
}
- Parametri:
fromOrgId: string
: l'ID del provider di servizi di appartenenza (MSP) del mittente e del proprietario del token nell'organizzazione corrente.
fromUserId: string
: il nome utente o l'ID di posta elettronica del mittente e del proprietario del token.
toOrgId: string
: l'ID del provider di servizi di appartenenza (MSP) del destinatario nell'organizzazione corrente.
toUserId: string
: il nome utente o l'ID e-mail del destinatario.
tokenIds: string[]
: lista di ID token per i token da trasferire.
quantity: number[]
: la lista delle quantità di token da trasferire, corrispondente all'array ID token.
- Restituisce:
- In caso di operazione riuscita, viene visualizzato un messaggio con i dettagli per ogni trasferimento di token.
- Esempio di valore restituito:
[
{
"msg": "Successfully transferred NFT token: 'FNFT' of '10' quantity from Account-Id: oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371 (Org-Id: appdev, User-Id: idcqa) to Account-Id: oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446 (Org-Id: appdev, User-Id: user1_minter)"
},
{
"msg": "Successfully transferred 10 FT token: 'FT' from Account-Id: oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e (Org-Id: appdev, User-Id: idcqa) to Account-Id: oaccount~1089ee5122f367ee0ca38c6660298f4b81f199627e4f67f3691c0f628237974c (Org-Id: appdev, User-Id: user1_minter)"
},
{
"msg": "Successfully transferred NFT token: 'NFT' from Account-Id: oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371 (Org-Id: appdev, User-Id: idcqa) to Account-Id: oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446 (Org-Id: appdev, User-Id: user1_minter)"
}
]
-
burnBatch
- Nome metodo originale:
burnBatch
- Questo metodo POST disattiva o brucia i token specificati. Qualsiasi utente con il ruolo di bruciatore può chiamare questo metodo.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"sameOrgEndorser": true
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail.
tokenIds: string[]
: la lista degli ID token da masterizzare
quantity: number[]
: la lista delle quantità di token da masterizzare, corrispondente all'array di ID token.
- Restituisce:
- In caso di successo, un messaggio con i dettagli sulle operazioni di masterizzazione.
- Esempio di valore restituito:
[
{
"msg": "Successfully burned NFT token: 'art' from Account-Id: oaccount~76cb672eeb1bd535899562a840d0c15a356db89e24bc8b43ac1dba845a4282c6 (Org-Id: appdev, User-Id: idcqa)"
},
{
"msg": "Successfully burned 5 tokens of tokenId: tokenOne from Account-ID oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: idcqa)"
},
{
"msg": "Successfully burned 2 token share of tokenId: FNFT from Account-ID oaccount~87bcb699d507368ee3966cd03ee6d7736ffc55dde8c0f0e16b14866334ac504a (Org-Id: AutoF1377358917, User-Id: idcqa)"
}
]
-
createAccount
- Nome metodo originale:
createAccount
- Questo metodo POST crea un account per un utente specificato e gli account token associati per i token. È necessario creare un account per qualsiasi utente che avrà token in qualsiasi momento. L'account utente tiene traccia dell'account NFT e degli account token fungibili detenuti da un utente. Per completare le operazioni relative ai token, gli utenti devono disporre di account nella rete. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato.
Un account utente dispone di un ID univoco, formato da un hash SHA-256 del parametro orgId
e del parametro userId
.
Un utente può avere più account token fungibili con ID account univoci. Gli ID account token fungibili sono formati da un hash SHA-256 del parametro orgId
, dal parametro userId
, dalla stringa costante ft
separata dal simbolo tilde (~
) e da un numero di contatore che indica l'indice del conto fungibile creato separato dal simbolo tilde (~
).
Un utente può avere un solo account token non fungibile. Gli ID account token non fungibili sono univoci e sono formati da un hash SHA-256 del parametro orgId
, del parametro userId
e della stringa costante nft
separati dal simbolo tilde (~
). Tutti i token non fungibili di proprietà di un utente, sia interi che frazionari, sono collegati a questo account.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"ftAccount": true,
"nftAccount": true,
"endorsers": {{endorsers}}
}
- Parametri:
orgId
: l'ID del provider di servizi di appartenenza (MSP) dell'utente per il quale creare l'account. L'ID deve iniziare con un carattere alfanumerico e può includere lettere, numeri e caratteri speciali quali i caratteri di sottolineatura (_), i punti (.), i segni @ e i trattini (-).
userId
: il nome utente o l'ID e-mail dell'utente. L'ID deve iniziare con un carattere alfanumerico e può includere lettere, numeri e caratteri speciali quali i caratteri di sottolineatura (_), i punti (.), i segni @ e i trattini (-).
ftAccount: boolean
: se true, viene creato un account token fungibile associato all'account utente.
nftAccount: boolean
: se true, viene creato un account token non fungibile associato all'account utente.
- Restituisce:
- In caso di operazione riuscita, un oggetto JSON dell'account creato.
- Esempio di valore restituito:
{
"assetType": "ouaccount",
"accountId": "ouaccount~cf20877546f52687f387e7c91d88b9722c97e1a456cc0484f40c747f7804feae",
"userId": "user1",
"orgId": "appdev",
"totalAccounts": 2,
"totalFtAccounts": 1,
"associatedFtAccounts": [
{
"accountId": "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b",
"tokenId": ""
}
],
"associatedNftAccount": "oaccount~73c3e835dac6d0a56ca9d8def08269f83cefd59b9d297fe2cdc5a9083828fa58"
}
-
createAccountWithEnrollment
- Nome metodo originale:
createAccountWithEnrollment
- Questo metodo POST crea un'iscrizione per un utente nel proxy REST dell'istanza e crea un conto NFT nel codice concatenato del marketplace delle obbligazioni.
- Payload:
{
"orgId": "orgId value",
"userId": "userId value"
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, un oggetto JSON dell'account creato.
- Esempio di valore restituito:
{
"blockNumber": 44,
"encode": "JSON",
"payload": {
"accountId": "ouaccount~1930ec223036c0fe2ea97c58fd9a8d2456d13c0fd0c98217ce075ceddb8add02",
"assetType": "ouaccount",
"associatedFtAccounts": [],
"associatedNftAccount": "oaccount~03f8a6949f6c5c453354a4a8eed8503a39766085b476430e95ce305769fba861",
"orgId": "BondMPTest",
"totalAccounts": 1,
"totalFtAccounts": 0,
"userId": "u14"
},
"sourceURL": "bondmptest-oabcs1-iad.blockchain.ocp.example.com:20010",
"txid": "9fa75a631f0de2ddf2ed85742dcc4d4b97b7afb0d3f9a07988e5cb9120ed633f"
}
-
createBondToken
- Nome metodo originale:
createBondToken
- Questo metodo POST crea token. Ogni token definito ha il proprio metodo di creazione. Per i token non fungibili, il chiamante di questo metodo diventa il proprietario dell'NFT. Se il comportamento
roles
è definito nella proprietà behaviors
del modello di token ed è specificato un valore minter_role_name
, l'account chiamante deve avere il ruolo minter.
- Payload:
{
"tokenAsset": "{\"tokenId\":\"{{bc-token-id}}\",\"tokenDesc\":\"tokenDesc value\",\"tokenUri\":\"tokenUri value\",\"tokenMetadata\":{\"ISIN\":\"ISIN value\",\"Segment\":\"Segment value\",\"Issuer\":\"Issuer value\",\"FaceValue\":999,\"IssueSize\":999,\"CouponRate\":999,\"InterestPaymentType\":\"InterestPaymentType value\",\"InterestFrequency\":\"InterestFrequency value\",\"IssueDate\":\"2023-03-28T15:16:36+00:00\",\"MaturityDate\":\"2023-03-28T15:16:36+00:00\"},\"status\":\"status value\"}",
"quantity": 1,
"sameOrgEndorser": true
}
- Parametri:
tokenAsset: <Token Class>
: l'asset token. Le proprietà dell'asset sono definite nel file modello.
quantity: number
: il numero di token da coniare. L'unico valore supportato per questo parametro è 1
.
- Restituisce:
- In caso di operazione riuscita, un oggetto JSON dell'account creato.
- Esempio di valore restituito:
{
"tokenMetadata": {
"ISIN": "ISIN value",
"Segment": "Segment value",
"Issuer": "Issuer value",
"FaceValue": 999,
"IssueSize": 999,
"CouponRate": 999,
"InterestPaymentType": "simple",
"InterestFrequency": "monthly",
"IssueDate": "2023-03-28T15:16:36.000Z",
"MaturityDate": "2023-03-28T15:16:36.000Z"
},
"assetType": "otoken",
"events": false,
"tokenId": "token2",
"tokenName": "bond",
"tokenDesc": "tokenDesc value",
"tokenStandard": "erc1155+",
"tokenType": "nonfungible",
"tokenUnit": "fractional",
"behaviors": [
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles": {
"minter_role_name": "minter",
"burner_role_name": "burner"
},
"mintable": {
"max_mint_quantity": 0
},
"quantity": 10,
"createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43",
"creationDate": "2024-12-03T12:07:24.000Z",
"divisible": {
"decimal": 0
},
"isBurned": false,
"isLocked": false,
"tokenUri": "tokenUri value",
"status": "created"
}
-
createIDSCUser
- Nome metodo originale:
createIDCSUser
- Questo metodo POST crea un utente di Identity Cloud Service nella tenancy specificata dall'URL nel file
terraform.tfvars
e assegna l'utente al gruppo di utenti specificato.
- Payload:
{
"userName": "userName value",
"firstName": "firstName value",
"lastName": "lastName value",
"email": "email value",
"groupName": "groupName value"
}
- Parametri:
userName: string
: l'ID dell'utente.
firstName: string
: il nome dell'utente.
lastName: string
: il cognome dell'utente.
email: string
- L'indirizzo email dell'utente.
groupName: string
: il nome del gruppo Identity Cloud Service da assegnare all'utente.
- Esempio di valore restituito:
{
"status": "Success",
"msg": "User user1 is created and assigned to the group BOND_ADMIN"
}
-
createTokenAccount
- Nome metodo originale:
createTokenAccount
- Questo metodo POST crea un account token fungibile o non fungibile da associare a un account utente.
Un utente può avere più account token fungibili con ID account univoci. Gli ID account token fungibili sono formati da un hash SHA-256 del parametro orgId
, dal parametro userId
, dalla stringa costante ft
separata dal simbolo tilde (~
) e da un numero di contatore che indica l'indice del conto fungibile creato separato dal simbolo tilde (~
).
Un utente può avere un solo account token non fungibile. Gli ID account token non fungibili sono univoci e sono formati da un hash SHA-256 del parametro orgId
, del parametro userId
e della stringa costante nft
separati dal simbolo tilde (~
). Tutti i token non fungibili di proprietà di un utente, sia interi che frazionari, sono collegati a questo account.
Questo metodo può essere richiamato solo da un Token Admin
del codice concatenato.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenType": "nonfungible",
"endorsers": {{endorsers}}
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
tokenType: TokenType
: il tipo di account token da creare. Gli unici tipi di token supportati sono nonfungible
e fungible
.
- Restituisce:
- In caso di operazione riuscita, un oggetto JSON dell'account token creato.
- Esempio di valore restituito:
{
"assetType": "ouaccount",
"accountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc",
"userId": "user2",
"orgId": "appdev",
"totalAccounts": 1,
"totalFtAccounts": 1,
"associatedFtAccounts": [
{
"accountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
"tokenId": ""
}
],
"associatedNftAccount": ""
}
-
createUserAccount
- Nome metodo originale:
createUserAccount
- Questo metodo POST crea un account per un utente specificato. È necessario creare un account per qualsiasi utente che avrà token in qualsiasi momento. L'account utente tiene traccia dell'account NFT e degli account token fungibili di cui dispone un utente. Per completare le operazioni relative ai token, gli utenti devono disporre di account nella rete.
Un ID account è un hash SHA-256 del parametro orgId
e del parametro userId
. Questo metodo può essere richiamato solo da un Token Admin
del codice concatenato.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, un oggetto JSON dell'account utente creato.
- Esempio di valore restituito:
{
"assetType": "ouaccount",
"accountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc",
"userId": "user2",
"orgId": "appdev",
"totalAccounts": 0,
"totalFtAccounts": 0,
"associatedFtAccounts": [],
"associatedNftAccount": ""
}
-
deleteAccount
- Nome metodo originale:
deleteAccount
- Questo metodo POST elimina un account token. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato. Questo metodo genera un errore se non viene trovato un valore accountStatus
per il conto nel libro contabile.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, una rappresentazione JSON dello stato dell'account token.
- Esempio di valore restituito:
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "deleted"
}
-
getAccount
- Nome metodo originale:
getAccount
- Questo metodo GET restituisce i dettagli dell'account token per un utente specificato. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato o dall'Account Owner
dell'account.
- Query:
/getAccount?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
tokenId?: string
: per un account token non fungibile, una stringa vuota. Per un account token fungibile, l'ID token.
- Restituisce:
- In caso di operazione riuscita, un oggetto JSON che include i dettagli dell'account token.
- Esempio di valore restituito
{
"assetType": "oaccount",
"accountId": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
"userId": "user2",
"orgId": "AppBldFFFFMay22",
"tokenType": "nonfungible",
"noOfNfts": 3
}
-
getAccountBondSummary
- Nome metodo originale:
getAccountBondSummary
- Questo metodo GET restituisce un riepilogo dell'account per l'utente specificato, inclusi i dettagli dei token acquistati o riscattati e i relativi prezzi di acquisto e riscatto.
- Query:
/getAccount?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, un oggetto JSON che include il riepilogo dell'account token.
- Esempio di valore restituito
[
{
"userAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"orgId":"BondMPTest",
"userId":"u10",
"accountSummary":[
{
"purchasedQuantity":1,
"assetType":"oUserBondDetails",
"id":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op1",
"tokenId":"bond1",
"status":"Redeemed",
"purchasedAmount":11,
"purchasedDate":"2024-12-02T00:00:00.000Z",
"purchasedFromAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"orderId":"op1"
"redeemPrice":11,
"quantityRedeem":1,
"redeemStatus":"REJECTED"
},
{
"purchasedQuantity":1,
"assetType":"oUserBondDetails",
"id":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op2",
"tokenId":"bond1",
"status":"Purchased",
"purchasedAmount":11,
"purchasedDate":"2024-12-02T00:00:00.000Z",
"purchasedFromAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"orderId":"op2",
"redeemPrice":11,
"quantityRedeem":1,
"redeemStatus":"APPROVED"
}
]
-
getAccountBondSummaryWithPagination
- Nome metodo originale:
getAccountBondSummaryWithPagination
- Questo metodo GET restituisce un riepilogo dell'account per l'utente specificato, inclusi i dettagli dei token acquistati o riscattati e i relativi prezzi di acquisto e riscatto. Questo metodo può restituire risultati con impaginazione basata su valori di pagesize e segnalibri e anche filtrati per ora di inizio e di fine.
- Query:
/getAccountBondSummary?orgId={{bc-org-id}}&userId={{bc-user-id}}&pageSize=1&bookmark={{bookmark}}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
pageSize: number
: la dimensione della pagina del risultato restituito.
bookmark: string
: il segnalibro del risultato restituito.
- Restituisce:
- In caso di operazione riuscita, un oggetto JSON che include il riepilogo dell'account token.
- Esempio di valore restituito
[
{
"userAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"orgId":"BondMPTest",
"userId":"u10",
"accountSummary":[
{
"purchasedQuantity":1,
"assetType":"oUserBondDetails",
"id":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op1",
"tokenId":"bond1",
"status":"Redeemed",
"purchasedAmount":11,
"purchasedDate":"2024-12-02T00:00:00.000Z",
"purchasedFromAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"orderId":"op1"
"redeemPrice":11,
"quantityRedeem":1,
"redeemStatus":"REJECTED"
},
{
"purchasedQuantity":1,
"assetType":"oUserBondDetails",
"id":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op2",
"tokenId":"bond1",
"status":"Purchased",
"purchasedAmount":11,
"purchasedDate":"2024-12-02T00:00:00.000Z",
"purchasedFromAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"orderId":"op2",
"redeemPrice":11,
"quantityRedeem":1,
"redeemStatus":"APPROVED"
}
]
-
getAccountDetailsByUser
- Nome metodo originale:
getAccountDetailsByUser
- Questo metodo GET restituisce un riepilogo dell'account per un utente specificato e i dettagli dei token fungibili e non fungibili associati all'utente. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato o dall'Account Owner
dell'account.
- Query:
/getAccountDetailsByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, un oggetto account JSON che include e riepiloga l'account per l'utente specificato e i dettagli dei token fungibili e non fungibili associati all'utente. Per i token non fungibili frazionari, la proprietà
tokenShare
nella sezione associatedNFTs
mostra la condivisione di proprietà dell'utente.
- Esempio di valore restituito:
{
"userAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"associatedFTAccounts": [
{
"accountId": "oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e",
"tokenId": "FT",
"balance": 50
}
],
"associatedNFTAccount": {
"accountId": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
"associatedNFTs": [
{
"nftTokenId": "FNFT",
"tokenShare": 100
},
{
"nftTokenId": "FNFT2",
"tokenShare": 110
},
{
"nftTokenId": "NFT"
}
]
}
}
-
getAccountStatus
- Nome metodo originale:
getAccountStatus
- Questo metodo GET recupera lo stato corrente dell'account token. Questo metodo può essere chiamato dal
Token Admin
del codice concatenato o dal proprietario dell'account token.
- Query:
/getAccountStatus?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, una rappresentazione JSON dello stato dell'account token.
- Esempio di valore restituito:
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "active"
}
-
getAccountStatusHistory
- Nome metodo originale:
getAccountStatusHistory
- Questo metodo GET recupera la cronologia dello stato dell'account. Questo metodo può essere chiamato dal
Token Admin
del codice concatenato o dal proprietario dell'account token.
- Query:
/getAccountStatusHistory?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, la cronologia dello stato dell'account in formato JSON.
- Esempio di valore restituito:
[
{
"trxId": "d5c6d6f601257ba9b6edaf5b7660f00adc13c37d5321b8f7d3a35afab2e93e63",
"timeStamp": "2022-12-02T10:39:14.000Z",
"value": {
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "suspended"
}
},
{
"trxId": "e6c850cfa084dc20ad95fb2bb8165eef3a3bd62a0ac867cccee57c2003125183",
"timeStamp": "2022-12-02T10:37:50.000Z",
"value": {
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "active"
}
}
]
-
getAccountTransactionHistory
- Nome metodo originale:
getAccountTransactionHistory
- Questo metodo GET restituisce la cronologia delle transazioni del conto. Questo metodo può essere chiamato solo da un
Token Admin
del codice concatenato o dal proprietario del conto.
/getAccountTransactionHistory?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Esempio di valore restituito:
[
{
"transactionId": "otransaction~3a6b23c3003626f3947e990eddbd7ac23398d2200e2eb3eac745e6ddfae140bc~7c88c736df38d5622512f1e8dcdd50710eb47c953f1ecb24ac44790a9e2f475b",
"timestamp": "2023-06-06T14:48:08.000Z",
"tokenId": "FNFT",
"transactedAmount": 10,
"triggeredByUserAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"transactedAccount": "oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446",
"transactionType": "DEBIT",
"balance": 90
},
{
"transactionId": "otransaction~3a6b23c3003626f3947e990eddbd7ac23398d2200e2eb3eac745e6ddfae140bc~178e3730bc5bee50d02f1464a4eebf733a051905f651e5789039adb4a3edc114",
"timestamp": "2023-06-06T14:48:08.000Z",
"tokenId": "NFT",
"triggeredByUserAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"transactedAccount": "oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446",
"transactionType": "DEBIT"
},
{
"transactionId": "otransaction~c369929e28e78de06c72d020f1418c9a154a7dd280b2e22ebb4ea4485e249124~a7cefb22ff39ee7e36967be71de27da6798548c872061a62dabc56d88d50b930",
"timestamp": "2023-06-06T14:47:08.000Z",
"tokenId": "NFT",
"triggeredByUserAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"transactedAccount": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
"transactionType": "MINT"
},
{
"transactionId": "otransaction~114a1bc78d04be48ee6dc140c32c042ee9481cb118959626f090eec744522422~e4eb15d9354f694230df8835ade012100d82aa43672896a2c7125a86e3048f9f",
"timestamp": "2023-06-05T17:17:57.000Z",
"tokenId": "FNFT",
"transactedAmount": 100,
"triggeredByUserAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"transactedAccount": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
"transactionType": "MINT",
"balance": 100
}
]
-
getAccountsByRole
- Nome metodo originale:
getAccountsByRole
- Questo metodo GET restituisce un elenco di tutti gli ID account per un ruolo e un token specificati.
- Query:
/getAccountsByRole?role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Parametri:
role: string
: il nome del ruolo da cercare.
tokenDetail: JSON
: per i token fungibili, l'ID del token. Per i token non fungibili, è necessario specificare il nome del token.
- Esempio di valore restituito:
{
"accounts": [
"oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
"oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b"
]
}
-
getAllAccounts
- Nome metodo originale:
getAllAccounts
- Questo metodo GET restituisce i dettagli di tutti gli account utente. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato.
- Query:
/getAllAccounts
- Parametri:
- Restituisce:
- In caso di operazione riuscita, un array JSON di tutti gli account.
- Esempio di valore restituito:
[
{
"assetType": "ouaccount",
"accountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
"userId": "user2",
"orgId": "appdev",
"totalAccounts": 2,
"totalFtAccounts": 1,
"associatedFtAccounts": [
{
"accountId": "oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e",
"tokenId": "loy1"
}
],
"associatedNftAccount": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371"
},
{
"assetType": "ouaccount",
"accountId": "ouaccount~9501bb774c156eb8354dfe489250ea91f757523d70f08ee494bda98bb352003b",
"userId": "user1_minter",
"orgId": "appdev",
"totalAccounts": 2,
"totalFtAccounts": 1,
"associatedFtAccounts": [
{
"accountId": "oaccount~1089ee5122f367ee0ca38c6660298f4b81f199627e4f67f3691c0f628237974c",
"tokenId": "loy1"
}
],
"associatedNftAccount": "oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446"
},
]
-
getAllTokenAdmins
- Nome metodo originale:
getAllTokenAdmins
- Questo metodo GET restituisce un elenco di tutti gli utenti che sono un
Token Admin
del codice concatenato. Questo metodo può essere richiamato solo da un Token Admin
del codice concatenato.
- Query:
/getAllTokenAdmins
- Parametri:
- Restituisce:
- In caso di operazione riuscita, un array
admins
in formato JSON contenente gli oggetti orgId
e userId
.
- Esempio di valore restituito:
{
"admins": [
{
"orgId": "appdev",
"userId": "user2"
},
{
"orgId": "appdev",
"userId": "user1"
}
]
}
-
getAllTokens
- Nome metodo originale:
getAllTokens
- Questo metodo restituisce tutti gli asset token salvati nel database di stato. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato. Questo metodo utilizza query rich SQL di Berkeley DB e può essere richiamato solo quando si è connessi alla rete remota di Oracle Blockchain Platform.
/getAllTokens
- Parametri:
- Restituisce:
- Lista di tutti gli asset token in formato JSON.
- Esempio di valore restituito:
[{
"tokenMetadata": {
"ISIN": "ISIN value",
"Segment": "Segment value",
"Issuer": "Issuer value",
"FaceValue": 999,
"IssueSize": 999,
"CouponRate": 999,
"InterestPaymentType": "simple",
"InterestFrequency": "monthly",
"IssueDate": "2023-03-28T15:16:36.000Z",
"MaturityDate": "2023-03-28T15:16:36.000Z"
},
"assetType": "otoken",
"events": false,
"tokenId": "token2",
"tokenName": "bond",
"tokenDesc": "tokenDesc value",
"tokenStandard": "erc1155+",
"tokenType": "nonfungible",
"tokenUnit": "fractional",
"behaviors": [
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles": {
"minter_role_name": "minter",
"burner_role_name": "burner"
},
"mintable": {
"max_mint_quantity": 0
},
"quantity": 10,
"createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43",
"creationDate": "2024-12-03T12:07:24.000Z",
"divisible": {
"decimal": 0
},
"isBurned": false,
"isLocked": false,
"tokenUri": "tokenUri value",
"status": "status value"
}]
-
getAllTokensByUser
- Nome metodo originale:
getAllTokensByUser
- Questo metodo GET restituisce tutti gli asset token di proprietà di un utente specificato. Questo metodo utilizza query rich SQL di Berkeley DB e può essere richiamato solo quando si è connessi alla rete remota di Oracle Blockchain Platform. Questo metodo può essere chiamato solo da un
Token Admin
del codice concatenato o dal proprietario del conto.
- Query:
/getAllTokensByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Esempio di valore restituito:
[{
"tokenMetadata": {
"ISIN": "ISIN value",
"Segment": "Segment value",
"Issuer": "Issuer value",
"FaceValue": 999,
"IssueSize": 999,
"CouponRate": 999,
"InterestPaymentType": "simple",
"InterestFrequency": "monthly",
"IssueDate": "2023-03-28T15:16:36.000Z",
"MaturityDate": "2023-03-28T15:16:36.000Z"
},
"assetType": "otoken",
"events": false,
"tokenId": "token2",
"tokenName": "bond",
"tokenDesc": "tokenDesc value",
"tokenStandard": "erc1155+",
"tokenType": "nonfungible",
"tokenUnit": "fractional",
"behaviors": [
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles": {
"minter_role_name": "minter",
"burner_role_name": "burner"
},
"mintable": {
"max_mint_quantity": 0
},
"quantity": 10,
"createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43",
"creationDate": "2024-12-03T12:07:24.000Z",
"divisible": {
"decimal": 0
},
"isBurned": false,
"isLocked": false,
"tokenUri": "tokenUri value",
"status": "status value"
}]
-
getAllTokensWithFilters
- Nome metodo originale:
getAllTokensWithFilters
- L'amministratore può chiamare questo metodo GET per recuperare tutti i token filtrati per stato.
- Query:
/getAllTokensWithFilters?status=status&pageSize=pageSize&bookmark=bookmark
- Parametri:
status: string
: lo stato del token, che può essere CREATED
o POSTED
.
pageSize: number
: la dimensione della pagina del risultato restituito.
bookmark: string
: il segnalibro del risultato restituito.
- Esempio di valore restituito:
[{
"tokenMetadata":{
"ISIN":"ISIN value",
"Segment":"Segment value",
"Issuer":"Issuer value",
"FaceValue":10,
"IssueSize":999,
"CouponRate":10,
"InterestPaymentType":"simple",
"InterestFrequency":"monthly",
"IssueDate":"2023-03-28T15:16:36.000Z",
"MaturityDate":"2023-03-28T15:16:36.000Z"
},
"assetType":"otoken",
"events":true,
"tokenId":"bond1",
"tokenName":"bond",
"tokenDesc":"tokenDesc value",
"tokenStandard":"erc1155+",
"tokenType":"nonfungible",
"tokenUnit":"fractional",
"behaviors":[
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles":{
"minter_role_name":"minter",
"burner_role_name":"burner"
},
"mintable":{
"max_mint_quantity":0
},
"quantity":100,
"createdBy":"oaccount~276bcf1324b1ad1e493e22432db3b39f7a4b9bb17b8525c0391ea3ba36138e00",
"creationDate":"2024-12-02T12:42:09.000Z",
"divisible":{
"decimal":0
},
"isBurned":false,
"isLocked":false,
"tokenUri":"tokenUri value",
"status":"posted"
}
]
-
getTokenApprovalRequestByUser
- Nome metodo originale:
getTokenApprovalRequestByUser
- Qualsiasi titolare del conto può chiamare questo metodo GET per ottenere i dettagli di tutte le richieste di approvazione del token (richieste di riscatto) che ha effettuato.
- Query:
/getTokenApprovalRequestByUser?status=status value
- Parametri:
status: string
: lo stato della richiesta, che può essere PENDING
, REJECTED
o APPROVED
.
- Esempio di valore restituito:
[
{
"tokenName":"bond",
"assetType":"otokenApproval",
"id":"otokenApproval~5b2a94283ae95e3d6e5b76ffd6f75b7bff231e4df270a82cdc1f6badd17dea4b",
"settlementId":"op1",
"userBondDetailsId":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op1",
"fromAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"toAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"tokenId":"bond1",
"quantity":2,
"status":"APPROVED",
"orderId":"op1",
"redeemPrice":1,
"purchasedPrice":11,
"interestEarned":0
},
{
"tokenName":"bond",
"assetType":"otokenApproval",
"id":"otokenApproval~fdf28b2d271ac9c0fbd94a2dedbf365728c77795f3e931e5a4a2dcf48039a989",
"settlementId":"op3",
"userBondDetailsId":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op3",
"fromAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"toAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"tokenId":"bond1",
"quantity":1,
"status":"APPROVED",
"orderId":"op3",
"redeemPrice":11,
"purchasedPrice":11,
"interestEarned":0
}
]
-
getTokenApprovalRequestForUserByStatus
- Nome metodo originale:
getTokenApprovalRequestByUser
- Qualsiasi titolare del conto può chiamare questo metodo GET per ottenere i dettagli di tutte le richieste di approvazione del token (richieste di riscatto) che ha effettuato.
- Query:
/getTokenApprovalRequestForUserByStatus?status=status value
- Parametri:
status: string
: lo stato della richiesta, che può essere PENDING
, REJECTED
o APPROVED
.
- Esempio di valore restituito:
[
{
"tokenName":"bond",
"assetType":"otokenApproval",
"id":"otokenApproval~5b2a94283ae95e3d6e5b76ffd6f75b7bff231e4df270a82cdc1f6badd17dea4b",
"settlementId":"op1",
"userBondDetailsId":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op1",
"fromAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"toAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"tokenId":"bond1",
"quantity":2,
"status":"APPROVED",
"orderId":"op1",
"redeemPrice":1,
"purchasedPrice":11,
"interestEarned":0
},
{
"tokenName":"bond",
"assetType":"otokenApproval",
"id":"otokenApproval~fdf28b2d271ac9c0fbd94a2dedbf365728c77795f3e931e5a4a2dcf48039a989",
"settlementId":"op3",
"userBondDetailsId":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op3",
"fromAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"toAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"tokenId":"bond1",
"quantity":1,
"status":"APPROVED",
"orderId":"op3",
"redeemPrice":11,
"purchasedPrice":11,
"interestEarned":0
}
]
-
getTokenById
- Nome metodo originale:
getTokenById
- Questo metodo GET restituisce un oggetto token se il token è presente nel database di stato. Per gli NFT frazionari, viene restituito anche l'elenco dei proprietari. Questo metodo può essere chiamato solo da un
Token Admin
del codice concatenato o dal proprietario del token.
- Query:
/getTokenById?tokenId={{bc-token-id}}
- Parametri:
tokenId: string
: l'ID del token da ottenere.
- Esempio di valore restituito:
[{
"tokenMetadata":{
"ISIN":"ISIN value",
"Segment":"Segment value",
"Issuer":"Issuer value",
"FaceValue":10,
"IssueSize":999,
"CouponRate":10,
"InterestPaymentType":"simple",
"InterestFrequency":"monthly",
"IssueDate":"2023-03-28T15:16:36.000Z",
"MaturityDate":"2023-03-28T15:16:36.000Z"
},
"assetType":"otoken",
"events":true,
"tokenId":"bond1",
"tokenName":"bond",
"tokenDesc":"tokenDesc value",
"tokenStandard":"erc1155+",
"tokenType":"nonfungible",
"tokenUnit":"fractional",
"behaviors":[
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles":{
"minter_role_name":"minter",
"burner_role_name":"burner"
},
"mintable":{
"max_mint_quantity":0
},
"quantity":100,
"createdBy":"oaccount~276bcf1324b1ad1e493e22432db3b39f7a4b9bb17b8525c0391ea3ba36138e00",
"creationDate":"2024-12-02T12:42:09.000Z",
"divisible":{
"decimal":0
},
"isBurned":false,
"isLocked":false,
"tokenUri":"tokenUri value",
"status":"posted"
}
]
-
getTokenHistory
- Nome metodo originale:
getTokenHistory
- Questo metodo GET restituisce la cronologia per un ID token specificato.
- Query:
/getTokenHistory?tokenId={{bc-token-id}}
- Parametri:
tokenId: string
: l'ID del token.
- Restituisce:
- In caso di operazione riuscita, un array JSON contenente la cronologia dei token.
- Esempio di valore restituito:
[{
"tokenMetadata":{
"ISIN":"ISIN value",
"Segment":"Segment value",
"Issuer":"Issuer value",
"FaceValue":10,
"IssueSize":999,
"CouponRate":10,
"InterestPaymentType":"simple",
"InterestFrequency":"monthly",
"IssueDate":"2023-03-28T15:16:36.000Z",
"MaturityDate":"2023-03-28T15:16:36.000Z"
},
"assetType":"otoken",
"events":true,
"tokenId":"bond1",
"tokenName":"bond",
"tokenDesc":"tokenDesc value",
"tokenStandard":"erc1155+",
"tokenType":"nonfungible",
"tokenUnit":"fractional",
"behaviors":[
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles":{
"minter_role_name":"minter",
"burner_role_name":"burner"
},
"mintable":{
"max_mint_quantity":0
},
"quantity":100,
"createdBy":"oaccount~276bcf1324b1ad1e493e22432db3b39f7a4b9bb17b8525c0391ea3ba36138e00",
"creationDate":"2024-12-02T12:42:09.000Z",
"divisible":{
"decimal":0
},
"isBurned":false,
"isLocked":false,
"tokenUri":"tokenUri value",
"status":"posted"
}
]
-
getUsersByRole
- Nome metodo originale:
getUsersByRole
- Questo metodo restituisce una lista di tutti gli utenti per un ruolo e un token specificati. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato.
- Query:
/getUsersByRole?role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Parametri:
role: string
: il nome del ruolo da cercare.
tokenDetail: JSON
: per i token fungibili, l'ID del token. Per i token non fungibili, è necessario specificare il nome del token.
- Esempio di valore restituito:
{
"users": [
{
"accountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
"orgId": "appdev",
"userId": "user2"
},
{
"accountId": "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b",
"orgId": "appdev",
"userId": "user1"
}
]
}
-
init
- Nome metodo originale:
init
- Questo metodo POST viene chiamato quando viene creata un'istanza del codice concatenato. Ogni
Token Admin
viene identificato dalle informazioni userId
e orgId
nel parametro adminList
. userId
è il nome utente o l'ID di posta elettronica del proprietario dell'istanza o dell'utente che ha eseguito il login all'istanza. orgId
è l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione di rete corrente. Il parametro adminList
è obbligatorio la prima volta che si distribuisce il codice concatenato. Se si sta aggiornando il codice concatenato, passare una lista vuota ([]
). Se si è l'utente che ha inizialmente distribuito il codice concatenato, è inoltre possibile specificare nuovi amministratori nel parametro adminList
durante l'aggiornamento del codice concatenato. Qualsiasi altra informazione nel parametro adminList
viene ignorata durante gli aggiornamenti.
- Payload:
{
"adminList": "[{\"orgId\":\"{{bc-org-id}}\",\"userId\":\"{{bc-user-id}}\"}]"
}
- Parametri:
adminList array
: un array di informazioni {orgId, userId}
che specifica la lista degli amministratori di token. L'array adminList
è un parametro obbligatorio.
- Restituisce:
- In caso di operazione riuscita, un messaggio senza payload.
- Esempio di valore restituito:
{
}
-
isInRole
- Nome metodo originale:
isInRole
- Questo metodo GET restituisce un valore booleano per indicare se un utente dispone di un ruolo specificato. I token non fungibili sono specificati dal nome del token. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato o dall'Account Owner
dell'account. L'utente specificato deve disporre di un account token associato al token fungibile o di un account token non fungibile per i ruoli NFT. Il ruolo specificato deve esistere nel file di specifica per il token.
- Query:
/isInRole?orgId={{bc-org-id}}&userId={{bc-user-id}}&role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Parametri:
- Esempio di valore restituito:
{
"result": true,
"msg": "Account Id oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: idcqa) has minter role"
}
-
isTokenAdmin
- Nome metodo originale:
isTokenAdmin
- Questo metodo GET restituisce il valore booleano
true
se il chiamante della funzione è un Token Admin
, altrimenti restituisce false
. Questo metodo può essere richiamato solo da un Token Admin
del codice concatenato.
/isTokenAdmin?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- Il metodo restituisce
true
se il chiamante è un Token Admin
, altrimenti restituisce false
.
- Esempio di valore restituito:
{"result": true}
-
mintBatch
- Nome metodo originale:
mintBatch
- Questo metodo POST crea (mint) più token in un'operazione batch. Questo metodo crea solo token fungibili o token non fungibili frazionari.
Per i token fungibili, se il ruolo minter è definito nel file di specifica, qualsiasi utente con il ruolo minter può chiamare questo metodo. In caso contrario, qualsiasi utente può utilizzare questo metodo per coniare i token. Impossibile coniare più della proprietà max_mint_quantity
del token se tale proprietà è stata specificata al momento della creazione o dell'aggiornamento del token.
Per i token non fungibili, se il ruolo minter è definito nel file di specifica, qualsiasi utente con il ruolo minter può chiamare questo metodo. In caso contrario, qualsiasi utente può utilizzare questo metodo per coniare i token. Inoltre, il chiamante deve essere anche il creatore del token. Non esiste un limite massimo per la quantità di token frazionari non fungibili che possono essere coniati.
Impossibile utilizzare questo metodo per coniare un token non fungibile intero.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"sameOrgEndorser": true
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
tokenIds: string[]
: la lista degli ID token per i quali creare i token.
quantity: number[]
: la lista delle quantità di token da coniare, corrispondente all'array ID token.
- Restituisce:
- In caso di operazione riuscita, un oggetto JSON che include dettagli sui token coniati.
- Esempio di valore restituito:
{
"msg": "Successfully minted batch of tokens for User-Account-Id ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38 (Org-Id: appdev, User-Id: idcqa).",
"details": [
{
"msg": "Successfully minted 100 tokens of fractional tokenId: plot55 to Org-Id: appdev, User-Id: idcqa"
},
{
"msg": "Successfully minted 100 tokens of tokenId: loyalty to Token-Account-Id oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e"
}
]
}
-
ownerOf
- Nome metodo originale:
ownerOf
- Questo metodo GET restituisce l'ID account, l'ID organizzazione e l'ID utente del proprietario dell'ID token specificato. Chiunque può chiamare questo metodo.
- Query:
/ownerOf?tokenId={{bc-token-id}}
- Parametri:
tokenId: string
: l'ID del token.
- Esempio di valore restituito:
[
{
"accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
"orgId": "Org1MSP",
"userId": "admin"
},
{
"accountId": "oaccount~74108eca702bab6d8548e740254f2cc7955d886885251d52d065042172a59db0",
"orgId": "Org1MSP",
"userId": "user"
}
]
-
payInterest
- Nome metodo originale:
ownerOf
- Questo metodo POST può essere chiamato solo dal creatore o dall'amministratore del token per pagare gli interessi maturati sul token obbligazionario. Questo metodo può essere chiamato solo se la frequenza di interesse del token è mensile, trimestrale o annuale. Gli interessi non possono essere pagati se la frequenza degli interessi è a scadenza. L'interesse viene calcolato dal codice concatenato in base al tasso coupon del token. L'operazione di acquisto trasferisce i token CBDC dal conto del chiamante al conto del proprietario dell'obbligazione. Per questo motivo, questo metodo deve essere eseguito nel contesto di una transazione atomica. Il metodo verifica anche il processo di trasferimento, garantendo che il codice concatenato CBDC appropriato sia chiamato con i corretti
orgId
e userId
per il trasferimento. I valori orgId
e userId
devono corrispondere al proprietario del token e il valore di trasferimento del token CBDC deve essere uguale all'interesse calcolato dal codice concatenato dell'obbligazione.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"tokenId": "{{bc-token-id}}",
"orderId": "orderId value",
"CBDCTokenId": "CBDCTokenId value",
"CBDCFromOrgId": "CBDCFromOrgId value",
"CBDCFromUserId": "CBDCFromUserId value",
"CBDCQuantity": 0,
"CBDCRemark": "{\\\"category\\\":\\\"category value\\\",\\\"description\\\":\\\"description value\\\"}",
"endorsers": {{endorsers}}
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
tokenId: string
: l'ID del token.
orderId: string
: l'ID ordine per l'operazione.
CBDCTokenId: string
: l'ID del token nel codice concatenato CBDC.
CBDCOrgId: string
: l'ID MSP dell'utente nel codice concatenato CBDC.
CBDCUserId: string
: il nome utente o l'ID e-mail dell'utente nel codice concatenato CBDC.
CBDCQuantity: string
: la quantità di token da trasferire nel codice concatenato CBDC.
CBDCRemark: string
- Un'osservazione per il trasferimento nel codice concatenato CBDC, che deve essere nel formato mostrato in precedenza.
- Esempio di valore restituito:
{
"returnCode":"Success",
"error":"",
"result":{
"transactions":[
{
"channel":"test",
"chaincode":"BondMarketplace",
"txstatus":"Committed",
"prepare":{
"txid":"e969f962df5efda2ea6287380e308cc974efd79dfff3567840ed3844bf936160"
},
"commit":{
"txid":"5544e928d3242291fb39189e8329679a9c81d61d6f72db60ca89135cd20fffef"
},
"rollback":{
}
},
{
"channel":"cbdctest",
"chaincode":"cbdc",
"txstatus":"Committed",
"prepare":{
"txid":"1245885b1a0c7f12c41fa2f2905549b8a5f37ab3a5e094b9dca122cb0611a117"
},
"commit":{
"txid":"3c83e20c7d470cdc9c1b0e2e0ea8d9962d58ada8d1b8f0d2606c8aa1f0ae7741"
},
"rollback":{
}
}
],
"lrc":{
},
"globalStatus":"Success",
"globalTxid":"761bb7cc-1d66-4645-aeb2-50e4dbd23d83",
"txStartTime":"2024-12-05T12:01:21.881988035Z"
}
}
-
postBondToken
- Nome metodo originale:
postBondToken
- Questo metodo POST può essere chiamato solo da un creatore di token. Il metodo sottomette il token di legame per l'inserimento nell'elenco sul mercato. Quando viene creato un token, il relativo stato viene inizialmente impostato su
created
. Questo metodo aggiorna lo stato in posted
. Gli utenti possono eseguire il metodo getAllTokensWithFilter
per recuperare tutti gli NFT con stato posted
.
- Payload:
{
"tokenId": "{{bc-token-id}}",
"sameOrgEndorser": true
}
- Parametri:
tokenId: string
: l'ID del token da inviare.
- Esempio di valore restituito:
{
"isValid":true,
"payload":{
"tokenMetadata":{
"ISIN":"ISIN value",
"Segment":"Segment value",
"Issuer":"Issuer value",
"FaceValue":10,
"IssueSize":999,
"CouponRate":10,
"InterestPaymentType":"simple",
"InterestFrequency":"monthly",
"IssueDate":"2023-03-28T15:16:36.000Z",
"MaturityDate":"2023-03-28T15:16:36.000Z"
},
"assetType":"otoken",
"events":true,
"tokenId":"bond1",
"tokenName":"bond",
"tokenDesc":"tokenDesc value",
"tokenStandard":"erc1155+",
"tokenType":"nonfungible",
"tokenUnit":"fractional",
"behaviors":[
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles":{
"minter_role_name":"minter",
"burner_role_name":"burner"
},
"mintable":{
"max_mint_quantity":0
},
"quantity":100,
"createdBy":"oaccount~276bcf1324b1ad1e493e22432db3b39f7a4b9bb17b8525c0391ea3ba36138e00",
"creationDate":"2024-12-02T12:42:09.000Z",
"divisible":{
"decimal":0
},
"isBurned":false,
"isLocked":false,
"tokenUri":"tokenUri value",
"status":"created"
},
"message":"Successfully updated asset with ID bond1"
}
-
purchaseBondToken
- Nome metodo originale:
purchaseBondToken
- Questo metodo POST può essere chiamato da qualsiasi titolare di conto per acquistare un NFT obbligazionario quotato. L'acquisto trasferisce il bond NFT dal conto del creatore al conto del chiamante e trasferisce i token CBDC dal conto del chiamante al conto del creatore. Per questo motivo, il metodo deve essere eseguito nel contesto di una transazione atomica. Il metodo verifica anche il processo di trasferimento, garantendo che il codice concatenato CBDC appropriato sia chiamato con i corretti
orgId
e userId
per il trasferimento. I valori orgId
e userId
devono corrispondere al creatore del token e il valore di trasferimento del token CBDC deve essere uguale al valore nominale del token obbligazionario moltiplicato per la quantità acquistata.
- Payload:
{
"tokenId": "{{bc-token-id}}",
"quantity": 1,
"orderId": "orderId value",
"additionalFees": 1,
"CBDCTokenId": "CBDCTokenId value",
"CBDCFromOrgId": "CBDCFromOrgId value",
"CBDCFromUserId": "CBDCFromUserId value",
"CBDCQuantity": 0,
"CBDCRemark": "{\\\"category\\\":\\\"category value\\\",\\\"description\\\":\\\"description value\\\"}",
"endorsers": {{endorsers}}
}
- Parametri:
tokenId: string
: l'ID del token da acquistare.
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
settlementId: string
: l'ID della liquidazione per l'operazione.
CBDCTokenId: string
: l'ID del token nel codice concatenato CBDC.
CBDCOrgId: string
: l'ID MSP dell'utente nel codice concatenato CBDC.
CBDCUserId: string
: il nome utente o l'ID e-mail dell'utente nel codice concatenato CBDC.
CBDCQuantity: string
: la quantità di token da trasferire nel codice concatenato CBDC.
CBDCRemark: string
- Un'osservazione per il trasferimento nel codice concatenato CBDC, che deve essere nel formato mostrato in precedenza.
- Esempio di valore restituito:
{
"returnCode":"Success",
"error":"",
"result":{
"transactions":[
{
"channel":"test",
"chaincode":"BondMarketplace",
"txstatus":"Committed",
"prepare":{
"txid":"e969f962df5efda2ea6287380e308cc974efd79dfff3567840ed3844bf936160"
},
"commit":{
"txid":"5544e928d3242291fb39189e8329679a9c81d61d6f72db60ca89135cd20fffef"
},
"rollback":{
}
},
{
"channel":"cbdctest",
"chaincode":"cbdc",
"txstatus":"Committed",
"prepare":{
"txid":"1245885b1a0c7f12c41fa2f2905549b8a5f37ab3a5e094b9dca122cb0611a117"
},
"commit":{
"txid":"3c83e20c7d470cdc9c1b0e2e0ea8d9962d58ada8d1b8f0d2606c8aa1f0ae7741"
},
"rollback":{
}
}
],
"lrc":{
},
"globalStatus":"Success",
"globalTxid":"761bb7cc-1d66-4645-aeb2-50e4dbd23d83",
"txStartTime":"2024-12-05T12:01:21.881988035Z"
}
}
-
rejectBondRedemption
- Nome metodo originale:
rejectBondRedemption
- Il creatore del token può chiamare questo metodo POST per rifiutare la richiesta di riscatto. I proprietari di token possono rilanciare una richiesta di riscatto utilizzando un ID liquidazione diverso.
- Payload:
{
"fromOrgId": "fromOrgId value",
"fromUserId": "fromUserId value",
"settlementId": "settlementId value",
"tokenId": "{{bc-token-id}}",
"endorsers": {{endorsers}}
}
- Parametri:
fromOrgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente.
fromUserId: string
: il nome utente o l'ID e-mail dell'utente.
settlementId: string
: l'ID liquidazione per l'operazione di riscatto.
tokenId: string
: l'ID del token.
- Esempio di valore restituito:
{
"status":"success",
"msg":"Successfully rejected the token approval request"
}
-
removeRole
- Nome metodo originale:
removeRole
- Questo metodo POST rimuove un ruolo da un utente e un token specificati. I token fungibili sono specificati dall'ID token. I token non fungibili sono specificati dal nome del token. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato.
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"role": "role value (for example minter / burner)",
"tokenDetail": "{\"tokenName\":\"tokenName value\"}",
"endorsers": {{endorsers}}
}
- Parametri:
- Esempio di valore restituito:
{
"msg": "Successfully removed role 'minter' from Account Id: oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b (Org-Id: appdev, User-Id: user1)"
}
-
removeTokenAdmin
- Nome metodo originale:
removeTokenAdmin
- Questo metodo POST rimuove un utente come
Token Admin
del codice concatenato. Questo metodo può essere richiamato solo da un Token Admin
del codice concatenato. Impossibile rimuovere se stesso come Token Admin
.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"sameOrgEndorser": true
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, un messaggio che include i dettagli dell'utente rimosso come
Token Admin
del codice concatenato.
- Esempio di valore restituito:
{"msg": "Successfully removed Admin (OrgId: appDev, UserId: user1)"}
-
requestBondRedemption
- Nome metodo originale:
requestBondRedemption
- Questo metodo POST può essere chiamato solo dal proprietario del token per presentare una richiesta di riscatto dei token obbligazionari dopo la scadenza. Questo metodo prevede anche il calcolo del prezzo di rimborso mediante il codice concatenato. Le richieste di riscatto possono essere generate solo sull'intera quantità del token obbligazionario di proprietà dell'utente. Gli utenti possono generare più richieste di riscatto in base a ID liquidazione diversi, ma solo uno può essere approvato dall'autore del token.
- Payload:
{
"settlementId": "settlementId value",
"tokenId": "{{bc-token-id}}",
"orderId": "orderId value",
"additionalFees": 1,
"endorsers": {{endorsers}}
}
- Parametri:
settlementId: string
: l'ID liquidazione per l'operazione di riscatto.
tokenId: string
: l'ID del token.
orderId: string
: l'ID dell'ordine per l'operazione di acquisto.
additionalFees: number
- I costi aggiuntivi da aggiungere al prezzo di riscatto.
- Esempio di valore restituito:
{
"tokenName":"bond",
"assetType":"otokenApproval",
"id":"otokenApproval~9e006057ac96ae997e3964531b1a08ad2316555701c7fe9ec7b88e38e20892bf",
"settlementId":"op4",
"userBondDetailsId":"ouserbonddetails~ed3aaa9979bfe6302dcc83b1b903bd383fda60ff17747ca25af3369e26289747~bond1~op4",
"fromAccountId":"ouaccount~df36ebaeb728c7768c0d5a3ecab435985c506ff57fd582212029b6f3c9cabf14",
"toAccountId":"ouaccount~e76f696c0d6c626b24d35b3ac21de377a6da24c1bfdab1411f6702a507003a15",
"tokenId":"bond1",
"quantity":1,
"status":"PENDING",
"orderId":"op4",
"redeemPrice":11
}
-
safeBatchTransferFrom
- Nome metodo originale:
safeBatchTransferFrom
- Questo metodo POST completa un'operazione batch che trasferisce i token specificati in una lista di ID token da un utente a un altro utente.
Per gli NFT, poiché il metodo trasferisce la proprietà dell'NFT, il mittente dell'NFT deve possedere il token.
Per gli NFT frazionari, se un utente (incluso il creatore del token) trasferisce tutte le azioni di cui è proprietario, perde la proprietà del token. Se una qualsiasi parte di un token viene trasferita a un utente, tale utente diventa automaticamente uno dei proprietari dell'NFT frazionario.
Il chiamante del metodo deve essere il mittente specificato.
{
"fromOrgId": "fromOrgId value",
"fromUserId": "fromUserId value",
"toOrgId": "toOrgId value",
"toUserId": "toUserId value",
"tokenIds": "[\"{{bc-token-id}}\"]",
"quantity": "[quantity value]",
"endorsers": {{endorsers}}
}
- Parametri:
fromOrgId: string
: l'ID del provider di servizi di appartenenza (MSP) del mittente e del proprietario del token nell'organizzazione corrente.
fromUserId: string
: il nome utente o l'ID di posta elettronica del mittente e del proprietario del token.
toOrgId: string
: l'ID del provider di servizi di appartenenza (MSP) del destinatario nell'organizzazione corrente.
toUserId: string
: il nome utente o l'ID e-mail del destinatario.
tokenIds: string[]
: lista di ID token per i token da trasferire.
quantity: number[]
: la lista delle quantità di token da trasferire, corrispondente all'array ID token.
- Restituisce:
- In caso di operazione riuscita, viene visualizzato un messaggio con i dettagli per ogni trasferimento di token.
- Esempio di valore restituito:
[
{
"msg": "Successfully transferred NFT token: 'FNFT' of '10' quantity from Account-Id: oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371 (Org-Id: appdev, User-Id: idcqa) to Account-Id: oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446 (Org-Id: appdev, User-Id: user1_minter)"
},
{
"msg": "Successfully transferred 10 FT token: 'FT' from Account-Id: oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e (Org-Id: appdev, User-Id: idcqa) to Account-Id: oaccount~1089ee5122f367ee0ca38c6660298f4b81f199627e4f67f3691c0f628237974c (Org-Id: appdev, User-Id: user1_minter)"
},
{
"msg": "Successfully transferred NFT token: 'NFT' from Account-Id: oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371 (Org-Id: appdev, User-Id: idcqa) to Account-Id: oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446 (Org-Id: appdev, User-Id: user1_minter)"
}
]
-
suspendAccount
- Nome metodo originale:
suspendAccount
- Questo metodo POST sospende un account token. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato. Dopo la sospensione di un conto, non è possibile completare le operazioni che lo aggiornano. Impossibile sospendere un account eliminato.
- Payload:
{
"orgId": "{{bc-org-id}}",
"userId": "{{bc-user-id}}",
"endorsers": {{endorsers}}
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, una rappresentazione JSON dello stato dell'account token.
- Esempio di valore restituito:
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "suspended"
}
-
updateBondToken
- Nome metodo originale:
updateBondToken
- Questo metodo POST aggiorna i token. Ogni token definito ha un proprio metodo di aggiornamento. Impossibile aggiornare i metadati del token o l'URI del token dei token non fungibili. Questo metodo può essere chiamato solo dal proprietario del token.
- Payload:
{
"tokenAsset": "{\"tokenId\":\"{{bc-token-id}}\",\"tokenDesc\":\"tokenDesc value\",\"tokenUri\":\"tokenUri value\",\"status\":\"status value\", \"tokenMetadata\":{\"ISIN\":\"ISIN value\",\"Segment\":\"Segment value\",\"Issuer\":\"Issuer value\",\"FaceValue\":999,\"IssueSize\":999,\"CouponRate\":999,\"InterestPaymentType\":\"InterestPaymentType value\",\"InterestFrequency\":\"InterestFrequency value\",\"IssueDate\":\"2023-03-28T15:16:36+00:00\",\"MaturityDate\":\"2023-03-28T15:16:36+00:00\"},\"status\":\"status value\"}",
"sameOrgEndorser": true
}
- Parametri:
tokenAsset: <Token Class>
: l'asset token. Le proprietà dell'asset sono definite nel file modello.
- Restituisce:
- In caso di operazione riuscita, l'asset token aggiornato in formato JSON.
- Esempio di valore restituito (intero NFT)
{
"tokenMetadata": {
"ISIN": "ISIN value",
"Segment": "Segment value",
"Issuer": "Issuer value",
"FaceValue": 999,
"IssueSize": 999,
"CouponRate": 999,
"InterestPaymentType": "simple",
"InterestFrequency": "monthly",
"IssueDate": "2023-03-28T15:16:36.000Z",
"MaturityDate": "2023-03-28T15:16:36.000Z"
},
"assetType": "otoken",
"events": false,
"tokenId": "token2",
"tokenName": "bond",
"tokenDesc": "tokenDesc value",
"tokenStandard": "erc1155+",
"tokenType": "nonfungible",
"tokenUnit": "fractional",
"behaviors": [
"divisible",
"mintable",
"transferable",
"burnable",
"roles"
],
"roles": {
"minter_role_name": "minter",
"burner_role_name": "burner"
},
"mintable": {
"max_mint_quantity": 0
},
"quantity": 10,
"createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43",
"creationDate": "2024-12-03T12:07:24.000Z",
"divisible": {
"decimal": 0
},
"isBurned": false,
"isLocked": false,
"tokenUri": "tokenUri value",
"status": "created"
}
-
URI
- Nome metodo originale:
URI
- Questo metodo restituisce l'URI di un token specificato.
- Query:
/URI?tokenId={{bc-token-id}}
- Parametri:
tokenId: string
: l'ID del token.
- Esempio di valore restituito:
{
"tokenUri": "example.com"
}