from peaq_robot import PeaqRobot
from peaq_robot.types import TxOptions, ConfirmationMode
sdk = PeaqRobot()
res = sdk.id.create_identity(
name=f"identity:{sdk.address}",
id=f"identity:{sdk.address}",
controller=f"identity:{sdk.address}",
verificationMethods=[{
"id": f"identity:{sdk.address}#keys-1",
"type": "Sr25519VerificationKey2020",
"controller": f"identity:{sdk.address}",
"publicKeyMultibase": sdk.id.keypair.public_key.hex(),
}],
authentications=[f"identity:{sdk.address}#keys-1"],
services=[
{"id": "#telemetry", "type": "RobotService", "data": "v1"}
],
signature={
"type": "Sr25519VerificationKey2020",
"issuer": sdk.address,
"hash": "demo",
},
tx_options=TxOptions(mode=ConfirmationMode.FAST),
)
print(res)
# Read back the final on-chain document (decoded if available)
doc = sdk.id.read_identity()
print(doc["decoded_data"]) # includes id, controller, verificationMethods, authentications, services, signature