ボンド・マーケットプレイス・ラッパーAPIパッケージ

Oracle Blockchain Platform Digital Assets Editionには、REST APIを拡張して、債券NFTマーケットプレイスに固有の操作をサポートするラッパーAPIパッケージが含まれています。

ラッパーAPIパッケージは、APIゲートウェイ・サービスとOCI Functionsを使用して、債券マーケットプレイスのNFTライフ・サイクルの管理に特化したAPIルートをデプロイします。ボンド・マーケットプレイスのラッパーAPIパッケージは、Oracle Blockchain Platformコンソールからダウンロードでき、デプロイメントに必要なTerraformスクリプトを含むラッパーAPIパッケージを含むアーカイブ・ファイルが含まれています。このファイルをOracle Cloud Infrastructure (OCI)上のリソース・マネージャ・スタックにデプロイして、ラッパーAPIに必要なOracleリソースを作成します。また、デプロイされたラッパーAPIをテストできるPostmanコレクションも含まれています。このコレクションには、ラッパーAPIパッケージで定義されたAPIに対応するエンドポイントおよびペイロードを含む事前構成されたリクエストが含まれます。

ラッパーAPI

activateAccount
元のメソッド名: activateAccount
このPOSTメソッドは、トークン・アカウントをアクティブ化します。このメソッドをコールできるのは、管理者またはアカウント所有者のみです。削除したアカウントはアクティブ化できません。
ペイロード:
{
    "tokenId": "{{bc-token-id}}",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
パラメータ:
  • tokenId: string– トークンのID。
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値:
  • 成功すると、指定したトークン・アカウントのアカウント・ステータス・オブジェクトのJSON表現。
戻り値の例:
{
  "assetType": "oaccountStatus",
  "status_id": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
  "account_id": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
  "status": "active"
}
addTokenAdmin
元のメソッド名: addTokenAdmin
このPOSTメソッドは、トークン・チェーンコードに他の管理者を追加します。このメソッドをコールできるのは、チェーンコードのトークン管理者のみです。
ペイロード:
{
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "endorsers": {{endorsers}}
}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値:
  • 成功すると、チェーンコードのToken Adminとして追加されたユーザーの詳細を含むメッセージが表示されます。
戻り値の例:
{
  "msg": "Successfully added Admin (OrgId: appDev, UserId: user1)"
}
addRole
元のメソッド名: addRole
このPOSTメソッドは、指定されたユーザーおよびトークンにロールを追加します。このメソッドをコールできるのは、チェーンコードのToken Adminのみです。無効でないトークンは、トークン名で指定されます。指定されたユーザーには、非代替トークンアカウントが必要です。トークンの指定ファイルに、指定されたロールが存在する必要があります。
ペイロード:
{
    "tokenId": "{{bc-token-id}}",
    "orgId": "{{bc-org-id}}",
    "userId": "{{bc-user-id}}",
    "role": "role minter/burner"
    "tokenDetails": "{"tokenName": "token name value"}"
    "endorsers": {{endorsers}}
}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
  • role: string– 指定したユーザーを追加するロールの名前。
  • tokenDetails: TokenDetail– トークンを指定する詳細。非代替トークンの場合は、次の形式を使用します。
    {"tokenName":"artCollection"}
戻り値:
  • 成功すると、アカウント詳細を含むメッセージ。
戻り値の例:
{
  "msg": "Successfully added role 'minter' to Account Id: oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: idcqa)"
}
approveBondRedemption
元のメソッド名: approveBondRedemption
このPOSTメソッドは、トークン作成者がボンド・トークンの引換えのリクエストを承認するためにのみコールできます。承認操作により、債券NFTが所有者のアカウント(要求を発行したユーザー)から作成者のアカウントに転送され、債券作成者のCBDCトークンが所有者のアカウントに転送されます。このため、このメソッドは原子性トランザクションのコンテキストで実行する必要があります。このメソッドは転送プロセスも検証し、転送に対して適切なCBDCチェーンコードが正しいorgIdおよびuserIdでコールされるようにします。orgIdおよびuserIdは、引換リクエストを発行したトークン所有者のアカウントに対応する必要があり、CBDCトークン転送値は、引換リクエストの呼出し時にチェーンコードによって計算された計算済引換価格と同じである必要があります。
ペイロード:
{
   "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}}
}
パラメータ:
  • fromOrgId: string– ユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • fromUserId: string– ユーザーのユーザー名または電子メールID。
  • settlementId: string– 引換操作の決済ID。
  • tokenId: string– トークンのID。
  • CBDCTokenId: string–CBDCチェーンコード内のトークンのID。
  • CBDCOrgId: string–CBDCチェーンコード内のユーザーのMSP ID。
  • CBDCUserId: string–CBDCチェーンコード内のユーザーのユーザー名または電子メールID。
  • CBDCQuantity: string–CBDCチェーンコードで転送するトークンの量。
  • CBDCRemark: string–CBDCチェーンコードでの転送に関する備考。前述の形式である必要があります。
戻り値の例:
{
   "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
元のメソッド名: balanceOfBatch
このGETメソッドは、トークン・アカウントの残高を取得するバッチ操作を完了します。アカウント詳細は、組織ID、ユーザーIDおよびトークンIDの3つの個別のリストで指定されます。このメソッドは、チェーンコードのToken Adminまたはアカウント所有者によってのみコールできます。口座所有者は、自分が所有する口座の残高詳細のみを表示できます。
Query:
/balanceOfBatch?orgIds=["{{bc-org-id}}"]&userIds=["{{bc-user-id}}"]&tokenIds=["{{bc-token-id}}"]
パラメータ:
  • orgIds: string[]– 現在の組織のメンバーシップ・サービス・プロバイダ(MSP)IDのリスト。
  • userIds: string[]– ユーザー名または電子メールIDのリスト。
  • tokenIds: string[]– トークンIDのリスト。
戻り値の例:

次の例では、トークンID FNFTはfungibleでない小数のトークンを表し、トークンID FTはfungibleトークンを表します。

[
    {
        "orgId": "appdev",
        "userId": "idcqa",
        "userAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
        "tokenAccountId": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
        "tokenId": "FNFT",
        "balance": 100
    },
    {
        "orgId": "appdev",
        "userId": "idcqa",
        "userAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38",
        "tokenAccountId": "oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e",
        "tokenId": "FT",
        "balance": 50
    },
    {
        "orgId": "appdev",
        "userId": "user1_minter",
        "userAccountId": "ouaccount~9501bb774c156eb8354dfe489250ea91f757523d70f08ee494bda98bb352003b",
        "tokenAccountId": "oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446",
        "tokenId": "FNFT",
        "balance": 10
    }
]
batchTransferFrom
元のメソッド名: batchTransferFrom
このPOSTメソッドは、トークンIDのリストで指定されたトークンを別のユーザーに転送するバッチ操作を完了します。
ペイロード:
{
 "fromOrgId": "fromOrgId value",
 "fromUserId": "fromUserId value",
 "toOrgId": "toOrgId value",
 "toUserId": "toUserId value",
 "tokenIds": "[\"{{bc-token-id}}\"]",
 "quantity": "[quantity value]",
 "endorsers": {{endorsers}}
}
パラメータ:
  • fromOrgId: string– 現在の組織内の送信者およびトークン所有者のメンバーシップ・サービス・プロバイダ(MSP)ID。
  • fromUserId: string– 送信者およびトークン所有者のユーザー名または電子メールID。
  • toOrgId: string– 現在の組織内の受信者のメンバーシップ・サービス・プロバイダ(MSP)ID。
  • toUserId: string– 受信者のユーザー名または電子メールID。
  • tokenIds: string[]– 転送するトークンのトークンIDのリスト。
  • quantity: number[]– 転送するトークンの数量のリストで、トークンID配列に対応します。
戻り値:
  • 成功すると、各トークン転送の詳細を含むメッセージ。
戻り値の例:
[
    {
        "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
元のメソッド名: burnBatch
このPOSTメソッドは、指定されたトークンを非アクティブ化またはバーンします。バーナー・ロールを持つすべてのユーザーがこのメソッドをコールできます。
ペイロード:
{
 "orgId": "{{bc-org-id}}",
 "userId": "{{bc-user-id}}",
 "tokenIds": "[\"{{bc-token-id}}\"]",
 "quantity": "[quantity value]",
 "sameOrgEndorser": true
}
パラメータ:
  • orgId: string– 現在の組織のメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザー名または電子メールID。
  • tokenIds: string[]– 書き込むトークンIDのリスト
  • quantity: number[]– トークンID配列に対応する、書き込むトークンの数量のリスト。
戻り値:
  • 成功すると、書き込み操作の詳細を示すメッセージが表示されます。
戻り値の例:
[
  {
    "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
元のメソッド名: createAccount
このPOSTメソッドは、トークンの指定されたユーザーおよび関連するトークン・アカウントのアカウントを作成します。任意の時点でトークンを持つすべてのユーザーに対してアカウントを作成する必要があります。ユーザー・アカウントは、ユーザーが保持するNFTアカウントおよび真菌可能トークン・アカウントを追跡します。ユーザーは、トークン関連の操作を完了するためにネットワーク内にアカウントを持っている必要があります。このメソッドをコールできるのは、チェーンコードのToken Adminのみです。

ユーザー・アカウントには、orgIdパラメータおよびuserIdパラメータのSHA-256ハッシュによって形成される一意のIDがあります。

ユーザーは、一意のアカウントIDを持つ複数の真菌可能トークン・アカウントを持つことができます。Fungibleトークン・アカウントIDは、orgIdパラメータのSHA-256ハッシュ、userIdパラメータ、チルダ記号で区切られた定数文字列ft (~)、およびチルダ記号(~)で区切られた作成中の真菌可能アカウントの索引を示すカウンタ番号によって形成されます。

ユーザーが所有できる非代替トークン・アカウントは1つのみです。非代替トークン・アカウントIDは一意であり、orgIdパラメータのSHA-256ハッシュ、userIdパラメータおよびチルダ記号(~)で区切られた定数文字列nftによって形成されます。ユーザーが所有するすべての非代替トークン(全体または小数)は、このアカウントにリンクされます。

ペイロード:
{
 "orgId": "{{bc-org-id}}",
 "userId": "{{bc-user-id}}",
 "ftAccount": true,
 "nftAccount": true,
 "endorsers": {{endorsers}}
}
パラメータ:
  • orgId– アカウントを作成するユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。IDは英数字で始める必要があり、文字、数字、およびアンダースコア(_)、ピリオド(.)、アットマーク(@)、ハイフン(-)などの特殊文字を含めることができます。
  • userId– ユーザーのユーザー名または電子メールID。IDは英数字で始める必要があり、文字、数字、およびアンダースコア(_)、ピリオド(.)、アットマーク(@)、ハイフン(-)などの特殊文字を含めることができます。
  • ftAccount: boolean–trueの場合、真菌可能なトークン・アカウントが作成され、ユーザー・アカウントに関連付けられます。
  • nftAccount: boolean–trueの場合、非代替トークン・アカウントが作成され、ユーザー・アカウントに関連付けられます。
戻り値:
  • 成功すると、作成されたアカウントのJSONオブジェクト。
戻り値の例:
{
  "assetType": "ouaccount",
  "accountId": "ouaccount~cf20877546f52687f387e7c91d88b9722c97e1a456cc0484f40c747f7804feae",
  "userId": "user1",
  "orgId": "appdev",
  "totalAccounts": 2,
  "totalFtAccounts": 1,
  "associatedFtAccounts": [
    {
      "accountId": "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b",
      "tokenId": ""
    }
  ],
  "associatedNftAccount": "oaccount~73c3e835dac6d0a56ca9d8def08269f83cefd59b9d297fe2cdc5a9083828fa58"
}
createAccountWithEnrollment
元のメソッド名: createAccountWithEnrollment
このPOSTメソッドは、インスタンスのRESTプロキシにユーザーの登録を作成し、債券マーケットプレイス・チェーンコードにNFTアカウントを作成します。
ペイロード:
{
 "orgId": "orgId value",
 "userId": "userId value"
}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値:
  • 成功すると、作成されたアカウントのJSONオブジェクト。
戻り値の例:
{
 "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
元のメソッド名: createBondToken
このPOSTメソッドはトークンを作成します。定義されているすべてのトークンには、独自のcreateメソッドがあります。非代替トークンの場合、このメソッドのコール元がNFTの所有者になります。roles動作がトークン・モデルのbehaviorsプロパティで定義され、minter_role_nameが指定されている場合、コール元アカウントにはminterロールが必要です。
ペイロード:
{
 "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
}
パラメータ:
  • tokenAsset: <Token Class>– トークン・アセット。アセットのプロパティは、モデル・ファイルで定義されます。
  • quantity: number–mintするトークンの数。このパラメータでサポートされている値は、1のみです。
戻り値:
  • 成功すると、作成されたアカウントのJSONオブジェクト。
戻り値の例:
{
            "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
元のメソッド名: createIDCSUser
このPOSTメソッドは、terraform.tfvarsファイルのURLで指定されたテナンシにIdentity Cloud Serviceユーザーを作成し、そのユーザーを特定のユーザー・グループに割り当てます。
ペイロード:
{
 "userName": "userName value",
 "firstName": "firstName value",
 "lastName": "lastName value",
 "email": "email value",
 "groupName": "groupName value"
}
パラメータ:
  • userName: string– ユーザーのID。
  • firstName: string– ユーザーの名。
  • lastName: string– ユーザーの姓。
  • email: string– ユーザーの電子メール・アドレス。
  • groupName: string– ユーザーに割り当てるIdentity Cloud Serviceグループの名前。
戻り値の例:
{
 "status": "Success",
 "msg": "User user1 is created and assigned to the group BOND_ADMIN"
}
createTokenAccount
元のメソッド名: createTokenAccount
このPOSTメソッドは、ユーザー・アカウントに関連付ける真菌性トークン・アカウントまたは非真菌性トークン・アカウントを作成します。

ユーザーは、一意のアカウントIDを持つ複数の真菌可能トークン・アカウントを持つことができます。Fungibleトークン・アカウントIDは、orgIdパラメータのSHA-256ハッシュ、userIdパラメータ、チルダ記号で区切られた定数文字列ft (~)、およびチルダ記号(~)で区切られた作成中の真菌可能アカウントの索引を示すカウンタ番号によって形成されます。

ユーザーが所有できる非代替トークン・アカウントは1つのみです。非代替トークン・アカウントIDは一意であり、orgIdパラメータのSHA-256ハッシュ、userIdパラメータおよびチルダ記号(~)で区切られた定数文字列nftによって形成されます。ユーザーが所有するすべての非代替トークン(全体または小数)は、このアカウントにリンクされます。

このメソッドをコールできるのは、チェーンコードのToken Adminのみです。

ペイロード:
{
 "orgId": "{{bc-org-id}}",
 "userId": "{{bc-user-id}}",
 "tokenType": "nonfungible",
 "endorsers": {{endorsers}}
}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
  • tokenType: TokenType– 作成するトークン・アカウントのタイプ。サポートされているトークン・タイプは、nonfungibleおよびfungibleのみです。
戻り値:
  • 成功すると、作成されたトークン・アカウントのJSONオブジェクト。
戻り値の例:
{
  "assetType": "ouaccount",
  "accountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc",
  "userId": "user2",
  "orgId": "appdev",
  "totalAccounts": 1,
  "totalFtAccounts": 1,
  "associatedFtAccounts": [
    {
      "accountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
      "tokenId": ""
    }
  ],
  "associatedNftAccount": ""
}
createUserAccount
元のメソッド名: createUserAccount
このPOSTメソッドは、指定されたユーザーのアカウントを作成します。任意の時点でトークンを持つすべてのユーザーに対してアカウントを作成する必要があります。ユーザー・アカウントは、ユーザーが所有するNFTアカウントおよび真菌可能トークン・アカウントを追跡します。ユーザーは、トークン関連の操作を完了するためにネットワーク内にアカウントを持っている必要があります。

アカウントIDは、orgIdパラメータおよびuserIdパラメータのSHA-256ハッシュです。このメソッドをコールできるのは、チェーンコードのToken Adminのみです。

ペイロード:
{
 "orgId": "{{bc-org-id}}",
 "userId": "{{bc-user-id}}",
 "endorsers": {{endorsers}}
}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値:
  • 成功すると、作成されたユーザー・アカウントのJSONオブジェクト。
戻り値の例:
{
  "assetType": "ouaccount",
  "accountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc",
  "userId": "user2",
  "orgId": "appdev",
  "totalAccounts": 0,
  "totalFtAccounts": 0,
  "associatedFtAccounts": [],
  "associatedNftAccount": ""
}
deleteAccount
元のメソッド名: deleteAccount
このPOSTメソッドは、トークン・アカウントを削除します。このメソッドをコールできるのは、チェーンコードのToken Adminのみです。このメソッドは、勘定科目のaccountStatus値が元帳に見つからない場合にエラーをスローします。
ペイロード:
{
 "orgId": "{{bc-org-id}}",
 "userId": "{{bc-user-id}}",
 "endorsers": {{endorsers}}
}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値:
  • 成功すると、トークン・アカウント・ステータスのJSON表現。
戻り値の例:
{
  "assetType": "oaccountStatus",
  "statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
  "accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
  "status": "deleted"
}
getAccount
元のメソッド名: getAccount
このGETメソッドは、指定されたユーザーのトークン・アカウント詳細を返します。このメソッドは、チェーンコードのToken AdminまたはアカウントのAccount Ownerによってのみコールできます。
Query:
/getAccount?orgId={{bc-org-id}}&userId={{bc-user-id}}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
  • tokenId?: string– 空でないトークン・アカウントの場合、空の文字列。真菌可能トークン・アカウントの場合、トークンID。
戻り値:
  • 成功すると、トークン・アカウントの詳細を含むJSONオブジェクト。
戻り値の例
{
    "assetType": "oaccount",
    "accountId": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371",
    "userId": "user2",
    "orgId": "AppBldFFFFMay22",
    "tokenType": "nonfungible",
    "noOfNfts": 3
}
getAccountBondSummary
元のメソッド名: getAccountBondSummary
このGETメソッドは、購入または引換済トークンの詳細、購入および引換価格など、指定されたユーザーのアカウント・サマリーを返します。
Query:
/getAccount?orgId={{bc-org-id}}&userId={{bc-user-id}}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値:
  • 成功すると、トークン・アカウント・サマリーを含むJSONオブジェクト。
戻り値の例
[
 {
   "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
元のメソッド名: getAccountBondSummaryWithPagination
このGETメソッドは、購入または引換済トークンの詳細、購入および引換価格など、指定されたユーザーのアカウント・サマリーを返します。このメソッドは、ページサイズとブックマークの値に基づいてページ区切りで結果を返し、開始時間と終了時間でフィルタすることもできます。
Query:
/getAccountBondSummary?orgId={{bc-org-id}}&userId={{bc-user-id}}&pageSize=1&bookmark={{bookmark}}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
  • pageSize: number– 返される結果のページ・サイズ。
  • bookmark: string– 返される結果のブックマーク。
戻り値:
  • 成功すると、トークン・アカウント・サマリーを含むJSONオブジェクト。
戻り値の例
[
 {

   "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
元のメソッド名: getAccountDetailsByUser
このGETメソッドは、指定されたユーザーのアカウント・サマリーと、そのユーザーに関連付けられている真菌性トークンおよび非真菌性トークンの詳細を返します。このメソッドは、チェーンコードのToken AdminまたはアカウントのAccount Ownerによってのみコールできます。
Query:
/getAccountDetailsByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値:
  • 成功すると、指定されたユーザーのアカウント・サマリー、およびユーザーに関連付けられている真菌可能トークンと非真菌性トークンの詳細を含むJSONアカウント・オブジェクト。小数の非代替トークンの場合、associatedNFTsセクションのtokenShareプロパティには、ユーザーが所有する共有が表示されます。
戻り値の例:
{
    "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
元のメソッド名: getAccountStatus
このGETメソッドは、トークン・アカウントの現在のステータスを取得します。このメソッドは、チェーンコードのToken Adminまたはトークン・アカウント所有者によってコールできます。
Query:
/getAccountStatus?orgId={{bc-org-id}}&userId={{bc-user-id}}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値:
  • 成功すると、トークン・アカウント・ステータスのJSON表現。
戻り値の例:
{
    "assetType": "oaccountStatus",
    "statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
    "accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
    "status": "active"
}
getAccountStatusHistory
元のメソッド名: getAccountStatusHistory
このGETメソッドは、アカウント・ステータスの履歴を取得します。このメソッドは、チェーンコードのToken Adminまたはトークン・アカウント所有者によってコールできます。
Query:
/getAccountStatusHistory?orgId={{bc-org-id}}&userId={{bc-user-id}}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値:
  • 成功すると、JSON形式のアカウント・ステータス履歴。
戻り値の例:
[
  {
    "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
元のメソッド名: getAccountTransactionHistory
このGETメソッドは、勘定科目トランザクション履歴を返します。このメソッドは、チェーンコードのToken Adminまたはアカウント所有者によってのみコールできます。
/getAccountTransactionHistory?orgId={{bc-org-id}}&userId={{bc-user-id}}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値の例:
[
    {
        "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
元のメソッド名: getAccountsByRole
このGETメソッドは、指定されたロールおよびトークンのすべてのアカウントIDのリストを返します。
Query:
/getAccountsByRole?role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
パラメータ:
  • role: string– 検索するロールの名前。
  • tokenDetail: JSON– 真菌性トークンの場合、トークンID。非代替トークンの場合、必須トークン名。
戻り値の例:
{
  "accounts": [
    "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
    "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b"
  ]
}
getAllAccounts
元のメソッド名: getAllAccounts
このGETメソッドは、すべてのユーザー・アカウントの詳細を返します。このメソッドをコールできるのは、チェーンコードのToken Adminのみです。
Query:
/getAllAccounts
パラメータ:
  • なし
戻り値:
  • 成功すると、すべてのアカウントのJSON配列。
戻り値の例:
[
        {
            "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
元のメソッド名: getAllTokenAdmins
このGETメソッドは、チェーンコードのToken Adminであるすべてのユーザーのリストを返します。このメソッドをコールできるのは、チェーンコードのToken Adminのみです。
Query:
/getAllTokenAdmins
パラメータ:
  • なし
戻り値:
  • 成功すると、orgIdおよびuserIdオブジェクトを含むJSON形式のadmins配列。
戻り値の例:
{
  "admins": [
    {
      "orgId": "appdev",
      "userId": "user2"
    },
    {
      "orgId": "appdev",
      "userId": "user1"
    }
  ]
}
getAllTokens
元のメソッド名: getAllTokens
このメソッドは、状態データベースに保存されているすべてのトークン・アセットを返します。このメソッドをコールできるのは、チェーンコードのToken Adminのみです。この方法では、Berkeley DB SQLリッチ問合せが使用され、リモートのOracle Blockchain Platformネットワークに接続されている場合にのみコールできます。
/getAllTokens
パラメータ:
  • なし
戻り値:
  • JSON形式のすべてのトークン・アセットのリスト。
戻り値の例:
[{
            "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
元のメソッド名: getAllTokensByUser
このGETメソッドは、指定されたユーザーが所有するすべてのトークン・アセットを返します。この方法では、Berkeley DB SQLリッチ問合せが使用され、リモートのOracle Blockchain Platformネットワークに接続されている場合にのみコールできます。このメソッドは、チェーンコードのToken Adminまたはアカウント所有者によってのみコールできます。
Query:
/getAllTokensByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値の例:
[{
            "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
元のメソッド名: getAllTokensWithFilters
管理者は、このGETメソッドをコールして、ステータスでフィルタされたすべてのトークンをフェッチできます。
Query:
/getAllTokensWithFilters?status=status&pageSize=pageSize&bookmark=bookmark
パラメータ:
  • status: string– トークンのステータス。CREATEDまたはPOSTEDのいずれかです。
  • pageSize: number– 返される結果のページ・サイズ。
  • bookmark: string– 返される結果のブックマーク。
戻り値の例:
[{
            "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
元のメソッド名: getTokenApprovalRequestByUser
アカウント所有者は、このGETメソッドをコールして、作成したすべてのトークン承認リクエスト(引換えリクエスト)の詳細を取得できます。
Query:
/getTokenApprovalRequestByUser?status=status value
パラメータ:
  • status: string– リクエストのステータス。PENDINGREJECTEDまたはAPPROVEDです。
戻り値の例:
[
   {
      "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
元のメソッド名: getTokenApprovalRequestByUser
アカウント所有者は、このGETメソッドをコールして、作成したすべてのトークン承認リクエスト(引換えリクエスト)の詳細を取得できます。
Query:
/getTokenApprovalRequestForUserByStatus?status=status value
パラメータ:
  • status: string– リクエストのステータス。PENDINGREJECTEDまたはAPPROVEDです。
戻り値の例:
[
   {
      "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
元のメソッド名: getTokenById
このGETメソッドは、トークンが状態データベースに存在する場合、トークン・オブジェクトを返します。小数NFTの場合、所有者のリストも返されます。このメソッドは、チェーンコードまたはトークン所有者のToken Adminによってのみコールできます。
Query:
/getTokenById?tokenId={{bc-token-id}}
パラメータ:
  • tokenId: string– 取得するトークンのID。
戻り値の例:
[{
            "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
元のメソッド名: getTokenHistory
このGETメソッドは、指定されたトークンIDの履歴を返します。
Query:
/getTokenHistory?tokenId={{bc-token-id}}
パラメータ:
  • tokenId: string– トークンのID。
戻り値:
  • 成功すると、トークン履歴を含むJSON配列。
戻り値の例:
[{
            "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
元のメソッド名: getUsersByRole
このメソッドは、指定されたロールおよびトークンのすべてのユーザーのリストを返します。このメソッドをコールできるのは、チェーンコードのToken Adminのみです。
Query:
/getUsersByRole?role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
パラメータ:
  • role: string– 検索するロールの名前。
  • tokenDetail: JSON– 真菌性トークンの場合、トークンID。非代替トークンの場合、必須トークン名。
戻り値の例:
{
    "users": [
        {
            "accountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a",
            "orgId": "appdev",
            "userId": "user2"
        },
        {
            "accountId": "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b",
            "orgId": "appdev",
            "userId": "user1"
        }
    ]
}
init
元のメソッド名: init
このPOSTメソッドは、チェーンコードがインスタンス化されるときにコールされます。すべてのToken Adminは、adminListパラメータのuserIdおよびorgId情報によって識別されます。userIdは、インスタンス所有者またはインスタンスにログインしているユーザーのユーザー名または電子メールIDです。orgIdは、現在のネットワーク組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP) IDです。チェーンコードを初めてデプロイする場合、adminListパラメータは必須です。チェーンコードをアップグレードする場合は、空のリスト([])を渡します。チェーンコードを最初にデプロイしたユーザーの場合、チェーンコードのアップグレード時にadminListパラメータに新しい管理者を指定することもできます。adminListパラメータ内のその他の情報は、アップグレード時に無視されます。
ペイロード:
{
 "adminList": "[{\"orgId\":\"{{bc-org-id}}\",\"userId\":\"{{bc-user-id}}\"}]"
}
パラメータ:
  • adminList array– トークン管理者のリストを指定する{orgId, userId}情報の配列。adminList配列は必須パラメータです。
戻り値:
  • 成功すると、ペイロードのないメッセージ。
戻り値の例:
{
}
isInRole
元のメソッド名: isInRole
このGETメソッドは、ユーザーに指定されたロールがあるかどうかを示すブール値を返します。無効でないトークンは、トークン名で指定されます。このメソッドは、チェーンコードのToken AdminまたはアカウントのAccount Ownerによってのみコールできます。指定されたユーザーには、真菌可能トークンに関連付けられたトークン・アカウント、またはNFTロールの非真菌可能トークン・アカウントが必要です。トークンの指定ファイルに、指定されたロールが存在する必要があります。
Query:
/isInRole?orgId={{bc-org-id}}&userId={{bc-user-id}}&role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
  • role: string– 検索するロールの名前。
  • tokenDetails: TokenDetail– トークンを指定する詳細。非代替トークンの場合は、次の形式を使用します。
    {"tokenName":"artCollection"}
戻り値の例:
{
    "result": true,
    "msg": "Account Id oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: idcqa) has minter role"
}
isTokenAdmin
元のメソッド名: isTokenAdmin
このGETメソッドは、ファンクションのコール元がToken Adminの場合はブール値trueを戻し、それ以外の場合はfalseを戻します。このメソッドをコールできるのは、チェーンコードのToken Adminのみです。
/isTokenAdmin?orgId={{bc-org-id}}&userId={{bc-user-id}}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値:
  • 呼出し側がToken Adminの場合はtrueを返し、そうでない場合はfalseを返します。
戻り値の例:
{"result": true}
mintBatch
元のメソッド名: mintBatch
このPOSTメソッドは、バッチ操作で複数のトークンを作成(分)します。このメソッドは、真菌性トークンまたは小数非真菌性トークンのみを作成します。

真菌性トークンの場合、minterロールが仕様ファイルに定義されていれば、minterロールを持つすべてのユーザーがこのメソッドをコールできます。そうでない場合は、どのユーザーもこのメソッドを使用してトークンをミントできます。トークンの作成または更新時にそのプロパティが指定されていた場合、トークンのmax_mint_quantityプロパティを超えるミントはできません。

非代替トークンの場合、minterロールが仕様ファイルに定義されていれば、minterロールを持つすべてのユーザーがこのメソッドをコールできます。そうでない場合は、どのユーザーもこのメソッドを使用してトークンをミントできます。また、呼び出し元もトークンの作成者である必要があります。ミントできる小数非真菌トークンの量に上限はありません。

このメソッドを使用して、非代替トークン全体をミントすることはできません。

ペイロード:
{
 "orgId": "{{bc-org-id}}",
 "userId": "{{bc-user-id}}",
 "tokenIds": "[\"{{bc-token-id}}\"]",
 "quantity": "[quantity value]",
 "sameOrgEndorser": true
}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
  • tokenIds: string[]– ミント・トークンに対するトークンIDのリスト。
  • quantity: number[]– トークンID配列に対応する、mintへのトークンの数量のリスト。
戻り値:
  • 成功すると、ミント・トークンの詳細を含むJSONオブジェクト。
戻り値の例:
{
    "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
元のメソッド名: ownerOf
このGETメソッドは、指定されたトークンIDの所有者のアカウントID、組織IDおよびユーザーIDを返します。誰でもこのメソッドを呼び出すことができます。
Query:
/ownerOf?tokenId={{bc-token-id}}
パラメータ:
  • tokenId: string– トークンのID。
戻り値の例:
[
    {
        "accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d",
        "orgId": "Org1MSP",
        "userId": "admin"
    },
    {
        "accountId": "oaccount~74108eca702bab6d8548e740254f2cc7955d886885251d52d065042172a59db0",
        "orgId": "Org1MSP",
        "userId": "user"
    }
]
payInterest
元のメソッド名: ownerOf
このPOSTメソッドは、トークン作成者または管理者が、債券トークンで獲得した利息を支払う場合にのみコールできます。このメソッドは、トークンの利息頻度が月次、四半期または年次の場合にのみコールできます。利息周期が満期の場合、利息は支払えません。利息は、トークンのクーポン・レートに基づいてチェーンコードによって計算されます。購入操作により、CBDCトークンが発信者のアカウントから債権所有者のアカウントに転送されます。このため、このメソッドは原子性トランザクションのコンテキストで実行する必要があります。このメソッドは転送プロセスも検証し、転送に対して適切なCBDCチェーンコードが正しいorgIdおよびuserIdでコールされるようにします。orgIdおよびuserIdはトークン所有者に対応している必要があり、CBDCトークン転送値は、結合チェーンコードによって計算された利息と等しい必要があります。
ペイロード:
{
 "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}}
}
パラメータ:
  • orgId: string– ユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
  • tokenId: string– トークンのID。
  • orderId: string– 操作の順序ID。
  • CBDCTokenId: string–CBDCチェーンコード内のトークンのID。
  • CBDCOrgId: string–CBDCチェーンコード内のユーザーのMSP ID。
  • CBDCUserId: string–CBDCチェーンコード内のユーザーのユーザー名または電子メールID。
  • CBDCQuantity: string–CBDCチェーンコードで転送するトークンの量。
  • CBDCRemark: string–CBDCチェーンコードでの転送に関する備考。前述の形式である必要があります。
戻り値の例:
{
   "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
元のメソッド名: postBondToken
このPOSTメソッドは、トークン作成者のみがコールできます。このメソッドは、マーケットプレイスにリストするためにボンド・トークンを送信します。トークンが作成されると、そのステータスは最初にcreatedに設定されます。このメソッドは、ステータスをpostedに更新します。ユーザーは、getAllTokensWithFilterメソッドを実行して、postedステータスのすべてのNFTを取得できます。
ペイロード:
{
 "tokenId": "{{bc-token-id}}",
 "sameOrgEndorser": true
}
パラメータ:
  • tokenId: string– 投稿するトークンのID。
戻り値の例:
{
         "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
元のメソッド名: purchaseBondToken
このPOSTメソッドは、リストされた債券NFTを購入するために任意の口座名義人が呼び出すことができます。購入は債券NFTを作成者のアカウントから発信者のアカウントに転送し、CBDCトークンを発信者のアカウントから作成者のアカウントに転送します。このため、このメソッドは原子性トランザクションのコンテキストで実行する必要があります。このメソッドは転送プロセスも検証し、転送に対して適切なCBDCチェーンコードが正しいorgIdおよびuserIdでコールされていることを確認します。orgIdおよびuserIdはトークン作成者に対応している必要があり、CBDCトークン転送値は、債券トークンの額面値に購入数量を乗算した値と同じである必要があります。
ペイロード:
{
 "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}}
}
パラメータ:
  • tokenId: string– 購入するトークンのID。
  • orgId: string– ユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
  • settlementId: string– 操作の決済ID。
  • CBDCTokenId: string–CBDCチェーンコード内のトークンのID。
  • CBDCOrgId: string–CBDCチェーンコード内のユーザーのMSP ID。
  • CBDCUserId: string–CBDCチェーンコード内のユーザーのユーザー名または電子メールID。
  • CBDCQuantity: string–CBDCチェーンコードで転送するトークンの量。
  • CBDCRemark: string–CBDCチェーンコードでの転送に関する備考。前述の形式である必要があります。
戻り値の例:
{
   "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
元のメソッド名: rejectBondRedemption
トークン作成者は、このPOSTメソッドをコールして引換え要求を拒否できます。トークン所有者は、別の決済IDを使用して引換要求を再発行できます。
ペイロード:
{
 "fromOrgId": "fromOrgId value",
 "fromUserId": "fromUserId value",
 "settlementId": "settlementId value",
 "tokenId": "{{bc-token-id}}",
 "endorsers": {{endorsers}}
}
パラメータ:
  • fromOrgId: string– ユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • fromUserId: string– ユーザーのユーザー名または電子メールID。
  • settlementId: string– 引換操作の決済ID。
  • tokenId: string– トークンのID。
戻り値の例:
{
   "status":"success",
   "msg":"Successfully rejected the token approval request"
}
removeRole
元のメソッド名: removeRole
このPOSTメソッドは、指定されたユーザーおよびトークンからロールを削除します。FungibleトークンはトークンIDによって指定されます。無効でないトークンは、トークン名で指定されます。このメソッドをコールできるのは、チェーンコードのToken Adminのみです。
{
 "orgId": "{{bc-org-id}}",
 "userId": "{{bc-user-id}}",
 "role": "role value (for example minter / burner)",
 "tokenDetail": "{\"tokenName\":\"tokenName value\"}",
 "endorsers": {{endorsers}}
}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
  • role: string– 指定したユーザーから削除するロールの名前。
  • tokenDetails: TokenDetail– トークンを指定する詳細。非代替トークンの場合は、次の形式を使用します。
    {"tokenName":"artCollection"}
戻り値の例:
{
  "msg": "Successfully removed role 'minter' from Account Id: oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b (Org-Id: appdev, User-Id: user1)"
}
removeTokenAdmin
元のメソッド名: removeTokenAdmin
このPOSTメソッドは、チェーンコードのToken Adminとしてユーザーを削除します。このメソッドをコールできるのは、チェーンコードのToken Adminのみです。Token Adminとして自分自身を削除することはできません。
ペイロード:
{
 "orgId": "{{bc-org-id}}",
 "userId": "{{bc-user-id}}",
 "sameOrgEndorser": true
}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値:
  • 成功すると、チェーンコードのToken Adminとして削除されたユーザーの詳細を含むメッセージが表示されます。
戻り値の例:
{"msg": "Successfully removed Admin (OrgId: appDev, UserId: user1)"}
requestBondRedemption
元のメソッド名: requestBondRedemption
このPOSTメソッドは、トークン所有者のみが呼び出して、成熟後に債券トークンの償還のリクエストを発行できます。この方法には、チェーンコードによる償却価格の計算も含まれます。引換要求は、ユーザーが所有する債券トークンの全数量に対してのみ発生させることができます。ユーザーは、異なる決済IDに基づいて複数の引換要求を発行できますが、トークン作成者が承認できるのは1つのみです。
ペイロード:
{
 "settlementId": "settlementId value",
 "tokenId": "{{bc-token-id}}",
 "orderId": "orderId value",
 "additionalFees": 1,
 "endorsers": {{endorsers}}
}
パラメータ:
  • settlementId: string– 引換操作の決済ID。
  • tokenId: string– トークンのID。
  • orderId: string– 購入操作の注文ID。
  • additionalFees: number– 引換価格に追加する追加料金。
戻り値の例:
{
         "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
元のメソッド名: safeBatchTransferFrom
このPOSTメソッドは、トークンIDのリストで指定されたトークンを別のユーザーに転送するバッチ操作を完了します。

NFTの場合、メソッドによってNFTの所有権が移動されるため、NFTの送信者はトークンを所有している必要があります。

小数NFTの場合、ユーザー(トークンの作成者を含む)が所有するすべてのシェアを転送すると、トークンの所有権が失われます。トークンのいずれかのシェアがユーザーに転送されると、そのユーザーは自動的に小数NFTの所有者の1人になります。

メソッドのコール元は、指定された送信者である必要があります。

{
 "fromOrgId": "fromOrgId value",
 "fromUserId": "fromUserId value",
 "toOrgId": "toOrgId value",
 "toUserId": "toUserId value",
 "tokenIds": "[\"{{bc-token-id}}\"]",
 "quantity": "[quantity value]",
 "endorsers": {{endorsers}}
}
パラメータ:
  • fromOrgId: string– 現在の組織内の送信者およびトークン所有者のメンバーシップ・サービス・プロバイダ(MSP)ID。
  • fromUserId: string– 送信者およびトークン所有者のユーザー名または電子メールID。
  • toOrgId: string– 現在の組織内の受信者のメンバーシップ・サービス・プロバイダ(MSP)ID。
  • toUserId: string– 受信者のユーザー名または電子メールID。
  • tokenIds: string[]– 転送するトークンのトークンIDのリスト。
  • quantity: number[]– 転送するトークンの数量のリストで、トークンID配列に対応します。
戻り値:
  • 成功すると、各トークン転送の詳細を含むメッセージ。
戻り値の例:
[
    {
        "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
元のメソッド名: suspendAccount
このPOSTメソッドは、トークン・アカウントを一時停止します。このメソッドをコールできるのは、チェーンコードのToken Adminのみです。アカウントの一時停止後は、アカウントを更新する操作を完了できません。削除されたアカウントは一時停止できません。
ペイロード:
{
 "orgId": "{{bc-org-id}}",
 "userId": "{{bc-user-id}}",
 "endorsers": {{endorsers}}
}
パラメータ:
  • orgId: string– 現在の組織内のユーザーのメンバーシップ・サービス・プロバイダ(MSP)ID。
  • userId: string– ユーザーのユーザー名または電子メールID。
戻り値:
  • 成功すると、トークン・アカウント・ステータスのJSON表現。
戻り値の例:
{
    "assetType": "oaccountStatus",
    "statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
    "accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
    "status": "suspended"
}
updateBondToken
元のメソッド名: updateBondToken
このPOSTメソッドはトークンを更新します。定義されているすべてのトークンには、独自の更新メソッドがあります。トークン・メタデータまたは非代替トークンのトークンURIは更新できません。このメソッドは、トークン所有者のみがコールできます。
ペイロード:
{
 "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
}
パラメータ:
  • tokenAsset: <Token Class>– トークン・アセット。アセットのプロパティは、モデル・ファイルで定義されます。
戻り値:
  • 成功すると、更新されたトークン・アセットがJSON形式で表示されます。
戻り値の例(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
元のメソッド名: URI
このメソッドは、指定されたトークンのURIを返します。
Query:
/URI?tokenId={{bc-token-id}}
パラメータ:
  • tokenId: string– トークンのID。
戻り値の例:
{
    "tokenUri": "example.com"
}
次の表に、チェーンコードAPI名と更新されたエンドポイント間のマッピングを示します。チェーンコードAPIの詳細は、「Scaffolded TypeScript Token Project」を参照してください。
更新済エンドポイント TypeScriptチェーンコードAPI名 GoチェーンコードAPI名 メソッド・タイプ
activateAccount activateAccount ActivateAccount ネイティブERC-1155メソッド
addAdmin addAdmin AddAdmin ネイティブERC-1155メソッド
addRole addRole AddRole ネイティブERC-1155メソッド
approveBondRedemption approveTokenRedemption ApproveTokenRedemption 変更済
balanceOfBatch balanceOfBatch BalanceOfBatch ネイティブERC-1155メソッド
batchTransferFrom batchTransferFrom BatchTransferFrom ネイティブERC-1155メソッド
burnBatch burnBatch BurnBatch ネイティブERC-1155メソッド
createAccount createAccount CreateAccount ネイティブERC-1155メソッド
createAccountWithEnrollment createAccountWithEnrollment CreateAccountWithEnrollment 追加
createBondToken createBondToken CreateBondToken ネイティブERC-1155メソッド
createIDCSUser createIDCSUser CreateIDCSUser 追加
createTokenAccount createTokenAccount CreateTokenAccount ネイティブERC-1155メソッド
createUserAccount createUserAccount CreateUserAccount ネイティブERC-1155メソッド
deleteAccount deleteAccount DeleteAccount ネイティブERC-1155メソッド
getAccount getAccount GetAccount ネイティブERC-1155メソッド
getAccountBondSummary getAccountBondSummary GetAccountBondSummary 債券市場方法
getAccountBondSummaryWithPagination getAccountBondSummaryWithPagination GetAccountBondSummaryWithPagination 債券市場方法
getAccountDetailsByUser getAccountDetailsByUser GetAccountDetailsByUser ネイティブERC-1155メソッド
getAccountStatus getAccountStatus GetAccountStatus ネイティブERC-1155メソッド
getAccountStatusHistory getAccountStatusHistory GetAccountStatusHistory ネイティブERC-1155メソッド
getAccountTransactionHistory getAccountTransactionHistory GetAccountTransactionHistory ネイティブERC-1155メソッド
getAccountsByRole getAccountsByRole GetAccountsByRole ネイティブERC-1155メソッド
getAllAccounts getAllAccounts GetAllAccounts ネイティブERC-1155メソッド
getAllTokenAdmins getAllTokenAdmins GetAllTokenAdmins ネイティブERC-1155メソッド
getAllTokens getAllTokens GetAllTokens ネイティブERC-1155メソッド
getAllTokensByUser getAllTokensByUser GetAllTokensByUser ネイティブERC-1155メソッド
getAllTokensWithFilters getAllTokensWithFilters GetAllTokensWithFilters 債券市場方法
getTokenApprovalRequestByUser getTokenApprovalRequestByUser GetTokenApprovalRequestByUser 債券市場方法
getTokenApprovalRequestForUserByStatus getTokenApprovalRequestForUserByStatus GetTokenApprovalRequestForUserByStatus 債券市場方法
getTokenById getTokenById GetTokenById ネイティブERC-1155メソッド
getTokenHistory getTokenHistory GetTokenHistory ネイティブERC-1155メソッド
getUsersByRole getUsersByRole GetUsersByRole ネイティブERC-1155メソッド
init init Init ネイティブERC-1155メソッド
isInRole isInRole IsInRole ネイティブERC-1155メソッド
isTokenAdmin isTokenAdmin IsTokenAdmin ネイティブERC-1155メソッド
mintBatch mintBatch MintBatch ネイティブERC-1155メソッド
ownerOf ownerOf OwnerOf ネイティブERC-1155メソッド
payInterest payInterest PayInterest 変更済
postBondToken postToken PostToken 債券市場方法
purchaseBondToken purchaseToken PurchaseToken 変更済
rejectBondRedemption rejectTokenRedemption RejectTokenRedemption 債券市場方法
removeRole removeRole RemoveRole ネイティブERC-1155メソッド
removeTokenAdmin removeTokenAdmin RemoveTokenAdmin ネイティブERC-1155メソッド
requestBondRedemption requestTokenRedemption RequestTokenRedemption 債券市場方法
safeBatchTransferFrom safeBatchTransferFrom SafeBatchTransferFrom ネイティブERC-1155メソッド
suspendAccount suspendAccount SuspendAccount ネイティブERC-1155メソッド
updateBondToken updateBondToken UpdateBondToken ネイティブERC-1155メソッド
URI URI URI ネイティブERC-1155メソッド