다음 API는 도매 CBDC 모델에 대해 수정되었습니다.
-
setApplicationGroups
- 이 메소드는 API에서 지정된 애플리케이션 그룹에 대한 계정 세부정보에
application_groups 매개변수를 설정합니다. 이 메소드는 지정된 조직의 Token Admin 또는 Org Admin에 의해서만 호출될 수 있습니다.
public async setApplicationGroups (org_id: string, user_id: string, token_id: string, application_groups: string[])
- 매개변수:
org_id: string – 현재 조직에 있는 사용자의 멤버쉽 서비스 공급자(MSP) ID입니다.
user_id: string – 사용자의 사용자 이름 또는 전자메일 ID입니다.
token_id: string – 토큰 ID입니다.
application_groups: string[] – 사용자 ID가 속한 응용 프로그램 그룹 목록으로, CBDC 응용 프로그램에서 사용자의 연관을 정의합니다.
- 반환 값 예제:
{
"returnCode": "Success",
"error": "",
"result": {
"txid": "453821c7ffd477987ef8ccbd836b893969531ab768098cd4a99e3b89cd38a391",
"payload": {
"bapAccountVersion": 0,
"assetType": "oaccount",
"account_id": "oaccount~28ac774001f374064029d51af4fb67e26ea1ea9ef62828b7a72dbf3beb8efd8d",
"user_id": "admin_user_cb",
"org_id": "CB",
"token_type": "fungible",
"token_id": "",
"token_name": "",
"balance": 0,
"onhold_balance": 0,
"onhold_burn_balance": 0,
"application_groups": [
"System_Admins"
],
"max_daily_amount": 10000,
"daily_amount": 0,
"max_daily_transactions": 100,
"daily_transactions": 0,
"current_date": "2024-12-09T00:00:00.000Z"
},
"encode": "JSON",
"sourceURL": "cb-oabcs1-bom.blockchain.ocp.example.com:20009",
"blockNumber": 188
}
}
-
getAllActiveAccounts
- 이 메소드는 지정된 토큰 ID와 연관된 모든 활성 계정을 반환합니다. 모든 유저가 이 메소드를 호출할 수 있습니다.
public async getAllActiveAccounts(token_id: string)
- 매개변수:
token_id: string – 토큰 ID입니다.
- 반환값:
- 성공 시 사용자 세부 정보가 포함된 메시지입니다. 출력은 다음 예에 표시된 대로 사용자의 역할에 따라 달라집니다.
- 반환 값 예(토큰 관리자, 토큰 감사자):
{
"returnCode": "Success",
"error": "",
"result": {
"payload": [
{
"key": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
"non_account_role_name": [
"token_admin"
],
"role_name": null,
"valueJson": {
"bapAccountVersion": 0,
"assetType": "oaccount",
"account_id": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
"user_id": "admin_user_cb",
"org_id": "CB",
"token_type": "fungible",
"token_id": "USD",
"token_name": "cbdc",
"balance": 0,
"onhold_balance": 0,
"onhold_burn_balance": 0,
"application_groups": [
"System_Admins"
],
"max_daily_amount": 10000,
"daily_amount": 0,
"max_daily_transactions": 1000,
"daily_transactions": 0,
"current_date": "2024-11-20T00:00:00.000Z"
}
}
],
"encode": "JSON"
}
}
- 반환 값 예(조직 관리자, 조직 감사자):
{
"returnCode": "Success",
"error": "",
"result": {
"payload": [
{
"key": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
"non_account_role_name": [
"token_admin"
],
"role_name": null,
"valueJson": {
"account_id": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
"org_id": "CB",
"user_id": "admin_user_cb",
"token_id": "USD",
"max_daily_amount": 10000,
"max_daily_transactions": 1000
}
}
],
"encode": "JSON"
}
}
- 반환 값 예제(다른 모든 사용자):
{
"returnCode": "Success",
"error": "",
"result": {
"payload": [
{
"key": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
"non_account_role_name": [
"token_admin"
],
"role_name": null,
"valueJson": {
"account_id": "oaccount~cdc6fa5e64bc29f700f99da69f980d8cbb768c7e1a11dd17274e75651f6afafe",
"org_id": "CB",
"user_id": "admin_user_cb",
"token_id": "USD",
"max_daily_amount": 10000,
"max_daily_transactions": 1000
}
}
],
"encode": "JSON"
}
}
-
getAllSuspendedAccounts
- 이 메소드는 지정된 토큰 ID와 연관된 일시 중지된 계정을 모두 반환합니다. 모든 유저가 이 메소드를 호출할 수 있습니다.
func (t *Controller) GetAllSuspendedAccounts(token_id string) (interface{}, error)
- 매개변수:
token_id: string – 토큰 ID입니다.
- 반환값:
- 성공 시 사용자 세부 정보가 포함된 메시지입니다. 출력은 다음 예에 표시된 대로 사용자의 역할에 따라 달라집니다.
- 반환 값 예(토큰 관리자, 토큰 감사자):
{
"returnCode": "Success",
"error": "",
"result": {
"payload": [
{
"key": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
"non_account_role_name": null,
"role_name": null,
"valueJson": {
"assetType": "oaccount",
"bapAccountVersion": 1,
"account_id": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
"user_id": "user1_fi1",
"org_id": "FI1",
"token_type": "fungible",
"token_id": "USD",
"token_name": "cbdc",
"balance": 5,
"onhold_balance": 0,
"onhold_burn_balance": 0,
"application_groups": [
"Org_Users"
],
"max_daily_amount": 10000,
"daily_amount": 0,
"max_daily_transactions": 1000,
"daily_transactions": 0,
"current_date": "2024-11-20T00:00:00.000Z"
}
}
],
"encode": "JSON"
}
}
- 반환 값 예(조직 관리자, 조직 감사자):
{
"returnCode": "Success",
"error": "",
"result": {
"payload": [
{
"key": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
"non_account_role_name": null,
"role_name": null,
"valueJson": {
"account_id": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
"org_id": "FI1",
"user_id": "user1_fi1",
"token_id": "USD",
"max_daily_amount": 10000,
"max_daily_transactions": 1000
}
}
],
"encode": "JSON"
}
}
- 반환 값 예제(다른 모든 사용자):
{
"returnCode": "Success",
"error": "",
"result": {
"payload": [
{
"key": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
"non_account_role_name": null,
"role_name": null,
"valueJson": {
"account_id": "oaccount~802bf8da5579c6103b2dddaa6c4385df8e722d639a18029e0e93d7a5d6f826d6",
"org_id": "FI1",
"user_id": "user1_fi1",
"token_id": "USD"
}
}
],
"encode": "JSON"
}
}
-
getBurnQuantity
- 이 방법은 지정된 조직에 대해 레코딩된 토큰의 총 수량을 반환합니다. 이 메소드는
Token Admin, Token Auditor 또는 버너 롤을 가진 사용자만 호출할 수 있습니다.
public async getBurnQuantity(token_id: string)
- 매개변수:
token_id: string – 토큰 ID입니다.
- 반환 값 예제:
{
"returnCode": "Success",
"error": "",
"result": {
"payload": {
"burnt_quantity": 31
},
"encode": "JSON"
}
}
-
getActionHistory
- 이 방법은 조직 세부정보 및 관련 계정(발신자, 수신자 및 공증)의 사용자 ID를 포함하여 민트, 레코딩 및 이전(발행) 작업에 대해 호출자가 수행한 승인 또는 거부 기록을 검색합니다.
public async getActionHistory(token_id: string)
- 매개변수:
token_id: string – 토큰 ID입니다.
- 반환 값 예제:
{
"returnCode": "Success",
"error": "",
"result": {
"payload": [
{
"from_account_id": "oaccount~0d7b3f73aea28065017ce8b79c0bb19256dc0cb475a0b2a85192bd110f69535c",
"from_org_id": "CB",
"from_user_id": "retirer_user_cb",
"holding_id": "ohold~cbdc~USD~eaf6",
"holding_status": "REJECT_BURN",
"last_updated_time": "2024-11-26T21:43:22.000Z",
"notary_account_id": null,
"notary_org_id": null,
"notary_user_id": null,
"operation_id": null,
"quantity": 3,
"timetoexpiration": null,
"to_account_id": "",
"to_org_id": null,
"to_user_id": null,
"token_id": "USD",
"token_name": null
},
{
"from_account_id": "oaccount~0d7b3f73aea28065017ce8b79c0bb19256dc0cb475a0b2a85192bd110f69535c",
"from_org_id": "CB",
"from_user_id": "retirer_user_cb",
"holding_id": "ohold~cbdc~USD~0031",
"holding_status": "REJECT_BURN",
"last_updated_time": "2024-11-26T21:43:15.000Z",
"notary_account_id": null,
"notary_org_id": null,
"notary_user_id": null,
"operation_id": null,
"quantity": 2,
"timetoexpiration": null,
"to_account_id": "",
"to_org_id": null,
"to_user_id": null,
"token_id": "USD",
"token_name": null
}
],
"encode": "JSON"
}
}
-
getPendingIssuance
- 이 방법은 발신자가 승인자로 지정된 모든 보류 중인 출고(이전) 트랜잭션을 검색합니다. 여기에는 조직의 세부정보 및 관련된 계정의 사용자 ID(발신자, 수신자 및 공증)가 포함됩니다. 이 메소드는 체인 코드의
Token Admin 또는 Token Auditor, 지정된 조직의 Org Admin 또는 Org Auditor 또는 Notary에 의해서만 호출될 수 있습니다.
public async getPendingIssuance(token_id: string)
- 매개변수:
token_id: string – 토큰 ID입니다.
- 반환 값 예제:
{
"returnCode": "Success",
"error": "",
"result": {
"payload": [
{
"asset_type": "ONHOLD",
"category": "category value",
"from_account_id": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
"from_org_id": "CB",
"from_user_id": "creator_user_cb",
"holding_id": "ohold~cbdc~USD~8e314",
"notary_account_id": "oaccount~2eb5f8a9bc561f8f41a4ea3be9511958cc6684ef14f2337ca396efc301b627d8",
"notary_org_id": "CB",
"notary_user_id": "manager_user_cb",
"operation_id": "8e314",
"quantity": 10,
"timetoexpiration": "0",
"to_account_id": "oaccount~44b844deccc6c314e14b8b9b95b51db5c8de499dbdbd3def2a44ba54c899c142",
"to_org_id": "FI1",
"to_user_id": "officer_user1_fi1",
"token_id": "USD",
"token_name": "cbdc"
},
{
"asset_type": "ONHOLD",
"category": "category value",
"from_account_id": "oaccount~51e676d7182a02ea7418ef58a6d54ecfe3858ef40b4ffb3d859b320da3921594",
"from_org_id": "CB",
"from_user_id": "issuer_user_cb",
"holding_id": "ohold~cbdc~USD~8e315",
"notary_account_id": "oaccount~2eb5f8a9bc561f8f41a4ea3be9511958cc6684ef14f2337ca396efc301b627d8",
"notary_org_id": "CB",
"notary_user_id": "manager_user_cb",
"operation_id": "8e315",
"quantity": 10,
"timetoexpiration": "0",
"to_account_id": "oaccount~44b844deccc6c314e14b8b9b95b51db5c8de499dbdbd3def2a44ba54c899c142",
"to_org_id": "FI1",
"to_user_id": "officer_user1_fi1",
"token_id": "USD",
"token_name": "cbdc"
}
],
"encode": "JSON"
}
}
-
getPendingRequest
- 이 메소드는 호출자가 승인자로 지정된 지정된 유형의 보류 중인 모든 요청을 검색합니다. 이 메소드는 체인 코드의
Token Admin 또는 Token Auditor, 지정된 조직의 Org Admin 또는 Org Auditor 또는 Notary에 의해서만 호출될 수 있습니다.
public async getPendingRequest(token_id: string, request_type: string)
- 매개변수:
token_id: string – 토큰 ID입니다.
request_type: string – 트랜잭션 유형입니다. 예를 들어, mint 또는 burn입니다.
- 반환 값 예제:
{
"returnCode": "Success",
"error": "",
"result": {
"payload": [
{
"valueJson": {
"assetType": "ohold",
"holding_id": "ohold~cbdc~USD~op123",
"operation_id": "op123",
"token_id": "USD",
"token_name": "cbdc",
"operation_type": "mint",
"status": "pending",
"from_account_id": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
"to_account_id": "",
"notary_account_id": "oaccount~2eb5f8a9bc561f8f41a4ea3be9511958cc6684ef14f2337ca396efc301b627d8",
"quantity": 10,
"time_to_expiration": "0",
"category": "category value",
"description": "description value"
}
}
],
"encode": "JSON"
}
}
-
getTotalBalanceByCallerOrgId
- 이 메소드는 호출자 조직의 총 잔액을 검색합니다.
Token Admin, Token Auditor, Org Admin, Org Auditor 또는 임의의 계정 소유자가 호출할 수 있습니다.
public async getTotalBalanceByCallerOrgId()
- 매개변수:
token_id: string – 토큰 ID입니다.
- 반환 값 예제:
{
"returnCode": "Success",
"error": "",
"result": {
"payload": [
{
"totalBalance": 704
}
],
"encode": "JSON"
}
}
-
getTransactionWithBlockNumber
- 이 메소드는 지정된 트랜잭션 ID에 대한 트랜잭션 세부정보를 반환합니다.
public async getTransactionWithBlockNumber(token_id: string, transaction_id: string)
- 매개변수:
token_id: string – 토큰 ID입니다.
transaction_id: string – 트랜잭션의 ID입니다.
- 반환 값 예제:
{
"returnCode": "Success",
"error": "",
"result": {
"payload": [
{
"blockNo": 82,
"key": "otransaction~24f391919a8837d654beaa7346148ea8b2b9704624aef482ce68078c485f5b1b",
"metadata": null,
"txnNo": 0,
"value": null,
"valueJson": {
"assetType": "otransaction",
"transaction_id": "otransaction~24f391919a8837d654beaa7346148ea8b2b9704624aef482ce68078c485f5b1b",
"token_id": "USD",
"from_account_id": "",
"from_account_balance": 0,
"from_account_onhold_balance": 0,
"to_account_id": "oaccount~9d9806fa92aa0c4fdb34eaffac6e830181b5d47e64fbce752195e83024125ca0",
"to_account_balance": 100,
"to_account_onhold_balance": 0,
"transaction_type": "REQUEST_MINT",
"amount": 200,
"timestamp": "2024-11-20T06:48:42.000Z",
"number_of_sub_transactions": 0,
"holding_id": "",
"sub_transaction": "false",
"description": ""
}
}
],
"encode": "JSON"
}
}