Get sao-client-js sdk
add sao-client-js dependency to your project:
$ npm install @saonetwork/sao-client-js
Prerequisite
follow sao client cmd tutorial to prepare local sao did.
Usage
Prepare local sao did.
- import sao-client-js package
import {NewSaoClientApi} from "@saonetwork/sao-client-js"
- initialize sao client
const nodeUrl = "https://gateway-beta.sao.network:443/rpc/v0"
const chainUrl = "https://rpc-beta.sao.network:443"
const keyName = "<keyName>"
const keyHome = "/home/user/.sao/keyring-test"
const groupId = "<groupId>"
const client = await NewSaoClientApi(nodeUrl, chainUrl, keyName, keyHome, groupId)
node url is endpoint to connect to gateway.
chain url is rpc endpoint to chain.
key name is local account key name.
Create Model
const duration = 365
const delay = 10
const name = "my profile"
const replicas = 5
const data = "your data model"
const dataId = await client.CreateModel(
{data: data, alias: name},
{duration: duration, replica: replicas, timeout: delay}
)
Load Model
console.log("load model...")
const model = await client.loadModel(dataId)
console.log(model.content)
Update Permission
console.log("update permissions...")
await client.updateModelPermission(
"dataId",
["readonly Dids..."],
["readwrite Dids..."]
)
console.log("Permission Updated")
Update Model
First step is to generate change patch
const target = "{\"nickname\":\"new name\"}"
const dataId = await client.UpdateModel(
{dataId: dataId,data: target}
{duration: duration, replica: replicas, timeout: delay}
)