Evolution SDK
Governance

DRep Registration

Register, update, and deregister as a Delegated Representative

DRep Registration

Delegated Representatives (DReps) vote on governance actions on behalf of ADA holders who delegate to them. Registration requires a deposit and optionally an anchor with metadata.

Register as a DRep

import { ,  } from "@evolution-sdk/evolution"

const  = ({
  : "preprod",
  : { : "blockfrost", : "https://cardano-preprod.blockfrost.io/api/v0", : ..! },
  : { : "seed", : ..!, : 0 }
})

declare const : .

const  = await 
  .()
  .({  })
  .()

const  = await .()
await .()

The deposit amount is fetched automatically from protocol parameters (drepDeposit).

Register with Metadata

Attach an anchor containing a metadata URL and its hash:

import { , ,  } from "@evolution-sdk/evolution"

const  = ({
  : "preprod",
  : { : "blockfrost", : "https://cardano-preprod.blockfrost.io/api/v0", : ..! },
  : { : "seed", : ..!, : 0 }
})

declare const : .
declare const : .

const  = await 
  .()
  .({
    ,
     // { url, dataHash } — metadata URL and hash
  })
  .()

const  = await .()
await .()

Update DRep Metadata

Change the metadata anchor for an existing DRep registration:

import { , ,  } from "@evolution-sdk/evolution"

const  = ({
  : "preprod",
  : { : "blockfrost", : "https://cardano-preprod.blockfrost.io/api/v0", : ..! },
  : { : "seed", : ..!, : 0 }
})

declare const : .
declare const : .

const  = await 
  .()
  .({
    ,
    : 
  })
  .()

const  = await .()
await .()

Deregister as a DRep

Remove DRep registration and reclaim the deposit:

import { ,  } from "@evolution-sdk/evolution"

const  = ({
  : "preprod",
  : { : "blockfrost", : "https://cardano-preprod.blockfrost.io/api/v0", : ..! },
  : { : "seed", : ..!, : 0 }
})

declare const : .

const  = await 
  .()
  .({  })
  .()

const  = await .()
await .()

Constitutional Committee Operations

Authorize a Hot Credential

Committee members keep their cold credential offline and authorize a hot credential for day-to-day signing:

import { ,  } from "@evolution-sdk/evolution"

const  = ({
  : "preprod",
  : { : "blockfrost", : "https://cardano-preprod.blockfrost.io/api/v0", : ..! },
  : { : "seed", : ..!, : 0 }
})

declare const : .
declare const : .

const  = await 
  .()
  .({ ,  })
  .()

const  = await .()
await .()

Resign from Committee

import { , ,  } from "@evolution-sdk/evolution"

const  = ({
  : "preprod",
  : { : "blockfrost", : "https://cardano-preprod.blockfrost.io/api/v0", : ..! },
  : { : "seed", : ..!, : 0 }
})

declare const : .
declare const : .

const  = await 
  .()
  .({
    ,
    :  // Optional rationale
  })
  .()

const  = await .()
await .()

Next Steps