Stablecoinチェーンコードメソッド

stablecoinチェーンコードには、一般的なトークン・タクソノミ・フレームワーク・チェーンコードで使用可能なすべてのTypeScriptメソッドと、stablecoinシナリオに固有の追加のTypeScriptメソッドが含まれます。

Stablecoinアセット・メソッド

stablecoinアセットは拡張トークンタクソノミ・フレームワーク標準に基づいており、その標準のすべての汎用メソッドをサポートしています。汎用トークン・タクソノミ・フレームワークのメソッドの詳細は、Oracle Blockchain Platformのブロックチェーン・アプリケーション・ビルダートークン・タクソノミ・フレームワーク用のスキャフォールドTypeScriptプロジェクトを参照してください。

ノート:

stablecoinチェーンコードでは、executeHoldTokensメソッドの動作は汎用バージョンとは異なります。方法のstablecoinバージョンは、常に完全な保留金額を完了し、部分的な転送をサポートしません。

アカウント・ポリシー・チェック方法

createAccountPolicyCheck
このメソッドは、指定されたアカウントのポリシーを作成します。このメソッドは、指定した組織のToken AdminまたはOrg Adminのみがコールできます。
createAccountPolicyCheck(asset: AccountPolicyCheck)
パラメータ:
  • asset: AccountPolicyCheck class– アカウント・ポリシー・パラメータを定義するクラスで、次のフィールドが含まれます。
    • accountPolicyId– このIDは、指定されたorgIdおよびuserIdフィールドから生成されます。このフィールドは手動で指定しません。
    • orgId– ポリシーを作成するユーザーのメンバーシップ・サービス・プロバイダ(MSP) ID。
    • userId– ポリシーを作成するユーザーのユーザー名または電子メールID。
    • kycCompliance– アカウントがKYC (Know Your Customer)要件を満たしているかどうかを示すブール値。
    • amlCompliance– アカウントがAML (マネーロンダリング防止)要件を満たしているかどうかを示すブール値。
    • riskScore– アカウントに関連付けられたリスク・スコア。コンプライアンス評価に使用されます。
    • restrictionFlag– アカウントが制限付き転送の対象かどうかを示すブール値。trueに設定すると、最も低い承認ポリシーしきい値内の転送のみが許可されます。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "02875ca9c6a7408da3f81156214228b91b09c4bb2b8026d7a5733b53598c6635",
        "payload": {
            "assetType": "AccountPolicyCheck",
            "accountPolicyId": "APID~CentralBank~cb__creator_demo",
            "orgId": "CentralBank",
            "userId": "cb__creator_demo",
            "kycCompliance": "true",
            "amlCompliance": "true",
            "riskScore": 1000,
            "restrictionFlag": "false"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 272
    }
}
getAccountPolicyCheckById
このメソッドは、指定されたポリシーIDのアカウント・ポリシー詳細を取得します。このメソッドは、指定された組織のToken AdminまたはToken Auditor、あるいはOrg AdminまたはOrg Auditorのみがコールできます。
getAccountPolicyCheckById(id: string)
パラメータ:
  • id: string– 一意のアカウント・ポリシーID。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "02875ca9c6a7408da3f81156214228b91b09c4bb2b8026d7a5733b53598c6635",
        "payload": {
            "assetType": "AccountPolicyCheck",
            "accountPolicyId": "APID~CentralBank~cb__creator_demo",
            "orgId": "CentralBank",
            "userId": "cb__creator_demo",
            "kycCompliance": "true",
            "amlCompliance": "true",
            "riskScore": 1000,
            "restrictionFlag": "false"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 272
    }
}
updateAccountPolicyCheck
このメソッドは、指定されたアカウントのポリシーを更新します。このメソッドは、指定した組織のToken AdminまたはOrg Adminのみがコールできます。
updateAccountPolicyCheck(asset: AccountPolicyCheck)
パラメータ:
  • asset: AccountPolicyCheck class– アカウント・ポリシー・パラメータを定義するクラスで、次のフィールドが含まれます。
    • accountPolicyId– 一意のアカウント・ポリシーID。
    • orgId– ポリシーを作成するユーザーのメンバーシップ・サービス・プロバイダ(MSP) ID。
    • userId– ポリシーを作成するユーザーのユーザー名または電子メールID。
    • kycCompliance– アカウントがKYC (Know Your Customer)要件を満たしているかどうかを示すブール値。
    • amlCompliance– アカウントがAML (マネーロンダリング防止)要件を満たしているかどうかを示すブール値。
    • riskScore– アカウントに関連付けられたリスク・スコア。コンプライアンス評価に使用されます。
    • restrictionFlag– アカウントが制限付き転送の対象かどうかを示すブール値。trueに設定すると、最も低い承認ポリシーしきい値内の転送のみが許可されます。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "02875ca9c6a7408da3f81156214228b91b09c4bb2b8026d7a5733b53598c6635",
        "payload": {
            "assetType": "AccountPolicyCheck",
            "accountPolicyId": "APID~CentralBank~cb__creator_demo",
            "orgId": "CentralBank",
            "userId": "cb__creator_demo",
            "kycCompliance": "true",
            "amlCompliance": "true",
            "riskScore": 1000,
            "restrictionFlag": "true"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 272
    }
}
deleteAccountPolicyCheck
このメソッドは、指定されたポリシーIDのポリシーを削除します。このメソッドは、指定した組織のToken AdminまたはOrg Adminのみがコールできます。
deleteAccountPolicyCheck(id: string)
パラメータ:
  • id: string– 一意のアカウント・ポリシーID。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "5499f49ae8595facbcbf56835bed9e6606875c0f54fd3cacb31a4104b56d3579",
        "payload": {
            "isValid": true,
            "message": "Successfully deleted asset with ID [APID~CentralBank~cb__creator_demo] from ledger"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 273
    }
}
getAccountPolicyCheckHistoryById
このメソッドは、指定されたポリシーIDの完全なアカウント・ポリシー履歴を取得します。このメソッドは、指定された組織のToken AdminまたはToken Auditor、あるいはOrg AdminまたはOrg Auditorのみがコールできます。
getAccountPolicyCheckHistoryById(id: string)
パラメータ:
  • id: string– 一意のアカウント・ポリシーID。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "trxId": "dbfd34199bc5ea7224ca6c9976e30166dc859923ab044e595d0d42ad842eb471",
                "timeStamp": "2025-11-20T21:36:29.000Z",
                "value": {
                    "assetType": "AccountPolicyCheck",
                    "accountPolicyId": "APID~CentralBank~cb__creator_demo",
                    "orgId": "CentralBank",
                    "userId": "cb__creator_demo",
                    "kycCompliance": "true",
                    "amlCompliance": "true",
                    "riskScore": 1000,
                    "restrictionFlag": "true"
                }
            },
            {
                "trxId": "8b6951a4093f3bb79a489397878f9025ce4384c8973a0c4d0ec9c618667e8935",
                "timeStamp": "2025-11-20T21:35:34.000Z",
                "value": {
                    "assetType": "AccountPolicyCheck",
                    "accountPolicyId": "APID~CentralBank~cb__creator_demo",
                    "orgId": "CentralBank",
                    "userId": "cb__creator_demo",
                    "kycCompliance": "true",
                    "amlCompliance": "true",
                    "riskScore": 1000,
                    "restrictionFlag": "false"
                }
            },
            {
                "trxId": "5499f49ae8595facbcbf56835bed9e6606875c0f54fd3cacb31a4104b56d3579",
                "timeStamp": "2025-11-20T21:34:03.000Z",
                "value": "KEY DELETED"
            },
            {
                "trxId": "02875ca9c6a7408da3f81156214228b91b09c4bb2b8026d7a5733b53598c6635",
                "timeStamp": "2025-11-20T21:33:24.000Z",
                "value": {
                    "assetType": "AccountPolicyCheck",
                    "accountPolicyId": "APID~CentralBank~cb__creator_demo",
                    "orgId": "CentralBank",
                    "userId": "cb__creator_demo",
                    "kycCompliance": "true",
                    "amlCompliance": "true",
                    "riskScore": 1000,
                    "restrictionFlag": "false"
                }
            }
        ],
        "encode": "JSON"
    }
}
getAccountPolicyCheckByRange
このメソッドは、指定した範囲のポリシーIDのすべてのポリシー履歴を取得します。このメソッドは、指定した組織のToken AdminまたはOrg Adminのみがコールできます。
getAccountPolicyCheckByRange(startId: string, endId: string)
パラメータ:
  • startId: string– 範囲の開始アカウント・ポリシーID (包含)。
  • endId: string– 範囲の終了アカウント・ポリシーID (排他的)。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "assetType": "AccountPolicyCheck",
                "accountPolicyId": "APID~CentralBank~cb__creator_demo",
                "orgId": "CentralBank",
                "userId": "cb__creator_demo",
                "kycCompliance": "true",
                "amlCompliance": "true",
                "riskScore": 1000,
                "restrictionFlag": "true"
            },
            {
                "assetType": "AccountPolicyCheck",
                "accountPolicyId": "APID~CentralBank~cb_issuer_demo",
                "orgId": "CentralBank",
                "userId": "cb_issuer_demo",
                "kycCompliance": "true",
                "amlCompliance": "true",
                "riskScore": 1000,
                "restrictionFlag": "false"
            }
        ],
        "encode": "JSON"
    }
}

承認ポリシー・チェック方法

createApprovalPolicyCheck
このメソッドは、承認ポリシーを作成します。このメソッドは、Token Adminのみがコールできます。
createApprovalPolicyCheck(asset: ApprovalPolicyCheck)
パラメータ:
  • asset: ApprovalPolicyCheck class– トランザクションの承認ルールを定義するクラスで、次のフィールドが含まれます。
    • approvalPolicyId– このIDが生成されます。このフィールドは手動で指定しません。
    • transactionLowerLimit– 承認ポリシーが適用される最小トランザクション金額。
    • transactionUpperLimit– 承認ポリシーが適用される最大トランザクション金額。
    • numberOfApprovalsRequired– トランザクションを完了するために必要な承認の合計数。
    • approverDetails– 承認者のリストと、承認の必須順序を定義する、割り当てられた承認順序。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "3a5701ca90ffb98832421c7d5377eb9c0df9fdab30a0a3ce06216808bdea098e",
        "payload": {
            "status": "active",
            "assetType": "ApprovalPolicyCheck",
            "approvalPolicyId": "GPID~500~1000",
            "transactionLowerLimit": "500",
            "transactionUpperLimit": "1000",
            "numberOfApprovalsRequired": 2,
            "approverDetails": [
                {
                    "approverOrgId": "CentralBank",
                    "approverUserId": "manager",
                    "approvalSequence": 1
                },
                {
                    "approverOrgId": "CentralBank",
                    "approverUserId": "creator",
                    "approvalSequence": 2
                }
            ]
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 284
    }
}
getApprovalPolicyCheckById
このメソッドは、指定されたポリシーIDの承認ポリシー詳細を取得します。このメソッドは、指定した組織のToken AdminまたはOrg Adminのみがコールできます。
getApprovalPolicyCheckById(id: string)
パラメータ:
  • id: string– 一意の承認ポリシーID。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "assetType": "ApprovalPolicyCheck",
            "approvalPolicyId": "GPID~0~100",
            "transactionLowerLimit": "0",
            "transactionUpperLimit": "100",
            "numberOfApprovalsRequired": 0,
            "approverDetails": []
        },
        "encode": "JSON"
    }
}
updateApprovalPolicyCheck
このメソッドは、承認ポリシーを更新します。このメソッドは、Token Adminのみがコールできます。
updateApprovalPolicyCheck(asset: ApprovalPolicyCheck)
パラメータ:
  • asset: ApprovalPolicyCheck class– トランザクションの承認ルールを定義するクラスで、次のフィールドが含まれます。
    • approvalPolicyId– 一意の承認ポリシーID。
    • transactionLowerLimit– 承認ポリシーが適用される最小トランザクション金額。
    • transactionUpperLimit– 承認ポリシーが適用される最大トランザクション金額。
    • numberOfApprovalsRequired– トランザクションを完了するために必要な承認の合計数。
    • approverDetails– 承認者のリストと、承認の必須順序を定義する、割り当てられた承認順序。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "ed1e1950fe02dbab74fa3aa7630b8dc6096e30aae5c81bab0dd22d5232c44fc9",
        "payload": {
            "status": "active",
            "assetType": "ApprovalPolicyCheck",
            "approvalPolicyId": "GPID~500~1000",
            "transactionLowerLimit": "500",
            "transactionUpperLimit": "1000",
            "numberOfApprovalsRequired": 1,
            "approverDetails": [
                {
                    "approverOrgId": "CentralBank",
                    "approverUserId": "manager",
                    "approvalSequence": 1
                }
            ]
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20009",
        "blockNumber": 285
    }
}
deleteApprovalPolicyCheck
このメソッドは、指定されたポリシーIDの承認ポリシーを削除します。このメソッドは、Token Adminのみがコールできます。
deleteApprovalPolicyCheck(id: string)
パラメータ:
  • id: string– 一意の承認ポリシーID。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "5ac54d3279a183022a00495aee3c25c2893388ff9aaaecd5c3b594edfa49ad8f",
        "payload": {
            "isValid": true,
            "message": "Successfully deleted asset with ID [GPID~500~1000] from ledger"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20009",
        "blockNumber": 286
    }
}
getApprovalPolicyCheckHistoryById
このメソッドは、指定されたポリシーIDの完全な承認ポリシー履歴を取得します。このメソッドは、指定した組織のToken AdminまたはOrg Adminのみがコールできます。
getApprovalPolicyCheckHistoryById(id: string)
パラメータ:
  • id: string– 一意の承認ポリシーID。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "trxId": "48f196c18869e871dc92ab880933ccc1c4dc402b9753ae6270e223646c177090",
                "timeStamp": "2025-11-21T09:30:04.000Z",
                "value": {
                    "assetType": "ApprovalPolicyCheck",
                    "approvalPolicyId": "GPID~0~100",
                    "transactionLowerLimit": "0",
                    "transactionUpperLimit": "100",
                    "numberOfApprovalsRequired": 0,
                    "approverDetails": []
                }
            }
        ],
        "encode": "JSON"
    }
}
getApprovalPolicyCheckByRange
このメソッドは、指定した範囲のポリシーIDのすべての承認ポリシー履歴を取得します。このメソッドは、指定した組織のToken AdminまたはOrg Adminのみがコールできます。
getApprovalPolicyCheckByRange(startId: string, endId: string)
パラメータ:
  • startId: string– 範囲の開始承認ポリシーID (包含)。
  • endId: string– 範囲の終了承認ポリシーID (除外)。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "assetType": "ApprovalPolicyCheck",
                "approvalPolicyId": "GPID~0~100",
                "transactionLowerLimit": "0",
                "transactionUpperLimit": "100",
                "numberOfApprovalsRequired": 0,
                "approverDetails": []
            },
            {
                "status": "active",
                "assetType": "ApprovalPolicyCheck",
                "approvalPolicyId": "GPID~500~1000",
                "transactionLowerLimit": "500",
                "transactionUpperLimit": "1000",
                "numberOfApprovalsRequired": 2,
                "approverDetails": [
                    {
                        "approverOrgId": "CentralBank",
                        "approverUserId": "manager",
                        "approvalSequence": 1
                    },
                    {
                        "approverOrgId": "CentralBank",
                        "approverUserId": "creator",
                        "approvalSequence": 2
                    }
                ]
            }
        ],
        "encode": "JSON"
    }
}

承認トランザクション方法

getApprovalTransactionById
このメソッドは、指定されたトランザクションIDの承認トランザクションを取得します。このメソッドは、指定した組織のToken AdminまたはOrg Adminのみがコールできます。
getApprovalTransactionsById(id: string)
パラメータ:
  • id: string– 承認トランザクションのシステム生成ID。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "assetType": "ApprovalTransactions",
            "approvalTransactionId": "hold1~oaccount~1cf5d40c7ea7b9dceedfc66292ab843c1583564c3ecaf9f5ceb11f834018b02f",
            "approvalOperationId": "hold1",
            "fromAccountId": "oaccount~374e4e762940fc185c7cd5b6528c7f94985b6c56acf46abb746de6381589edd2",
            "toAccountId": "oaccount~79c427e614530eacad6fb07cff6048f6b96283e65019301320c9684932846f64",
            "approverAccountId": "oaccount~1cf5d40c7ea7b9dceedfc66292ab843c1583564c3ecaf9f5ceb11f834018b02f",
            "totalApprovals": 1,
            "timestamp": "2025-11-21T12:32:43.000Z"
        },
        "encode": "JSON"
    }
}

カスタム・メソッド

getApproverDetailsByTransferAmount
この方法では、指定された振替金額に必要な承認者詳細を取得します。このメソッドは、Token AdminまたはToken Auditorのみがコールできます。
getApproverDetailsByTransferAmount(Amount: number)
パラメータ:
  • amount: number– 転送量。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "5874105c14abd67e68cb4dacf82f2a2dca6cc9da4f5b27fcc91c83a60b7249e1",
        "payload": {
            "approverDetails": [
                {
                    "approverOrgId": "CentralBank",
                    "approverUserId": "manager",
                    "approvalSequence": 1
                },
                {
                    "approverOrgId": "CentralBank",
                    "approverUserId": "creator",
                    "approvalSequence": 2
                }
            ]
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 292
    }
}
approveTransaction
承認者は、この方法を使用して保留トランザクションを承認できます。
approveTransaction(token_id: string, operation_id: string, quantity: number)
パラメータ:
  • token_id: string – トークンのID。
  • operation_id: string – 保留操作を識別する一意のID。通常、このIDはクライアント・アプリケーションによって渡されます。
  • quantity: number– 転送する保留トークンの数。
戻り値の例:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "44685b0ff1b0ee72d57cb62900aae30638d65c82f264d5de7b28375732171702",
        "payload": {
            "assetType": "ApprovalTransactions",
            "approvalTransactionId": "hold1~oaccount~1cf5d40c7ea7b9dceedfc66292ab843c1583564c3ecaf9f5ceb11f834018b02f",
            "approvalOperationId": "hold1",
            "fromAccountId": "oaccount~374e4e762940fc185c7cd5b6528c7f94985b6c56acf46abb746de6381589edd2",
            "toAccountId": "oaccount~79c427e614530eacad6fb07cff6048f6b96283e65019301320c9684932846f64",
            "approverAccountId": "oaccount~1cf5d40c7ea7b9dceedfc66292ab843c1583564c3ecaf9f5ceb11f834018b02f",
            "totalApprovals": 1,
            "timestamp": "2025-11-21T12:32:43.000Z"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 289
    }
}