Documentation IndexFetch the complete documentation index at: /llms.txtUse this file to discover all available pages before exploring further.
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
You can associate your Twitter account with your DEMOS address by following these steps:
import { Demos } from "@kynesyslabs/demosdk/websdk" import { Identities } from "@kynesyslabs/demosdk/abstraction"; // the DEMOS rpc const rpc = "https://node2.demos.sh" const demos = new Demos(); await demos.connect(rpc); await demos.connectWallet(mnemonic);
const identities = new Identities(); const proofPayload = await identities.createWeb2ProofPayload(demos) console.log("Tweet this:", proofPayload)
demos:dw2p:ed25519:e9dd684a031e142ce312b695275b226ab8824f2fd3674db52f28be6c3e9fe027f88a8a9509563....
const proof = "https://x.com/cwilvxi/status/1905612827840196726" const validityData = await identities.addTwitterIdentity(demos, proof) console.log("validity data: ", validityData) if (validityData.result == 200){ const res = await demos.broadcast(validityData) console.log(res) }
{ "result": 200, "response": { "message": "Verified twitter proof. Transaction applied." }, "require_reply": false, "extra": { "confirmationBlock": 9 } }
const web2Ids = await identities.getWeb2Identities(demos)
{ "result": 200, "response": { "twitter": [ { "proof": "https://x.com/cwilvxi/status/1905612827840196726", "username": "cwilvxi", "proofHash": "d1ebcb162c3d5c7d...a6078a90ee56fb21652" } ] }, "require_reply": false, "extra": null }
const payload = { context: "twitter", username: "cwilvxi" } const validityData = await identities.removeWeb2Identity(demos, payload); if (validityData.result == 200) { const res = await demos.broadcast(validityData); console.log(res); }
{ "result": 200, "response": { "message": "Identity removed. Transaction applied." }, "require_reply": false, "extra": { "confirmationBlock": 25 } }