Salta ai contenuti

sign_proposal

Per gli emittenti: avvia il flusso di firma per una proposta multisig. Lo strumento chiama il backend Aktionariat per bloccare il nonce e il prezzo del gas della proposta, quindi restituisce un deep link (aktionariat://) più un codice QR SVG pre-renderizzato. L’utente completa la firma nell’app mobile Aktionariat — questo strumento stesso non firma nulla.

Richiede l’accesso con accesso e autorizzazioni di emittente alla società della proposta. Chiama prima list_proposals per ottenere un id di proposta valido.

CampoTipoObbligatorioDescrizione
idintegerId della proposta, ottenuto da list_proposals.
CampoTipoDescrizione
proposalIdintegerEco dell’id di input.
deepLinkstringaktionariat://proposal/<uid>/<nonce>/<gasPrice> — apre l’app Aktionariat pre-caricata con la proposta.
qrDatastringLa stessa stringa di deepLink, denominata separatamente in modo che un widget QR abbia un campo semanticamente chiaro.
qrSvgstringUn documento <svg>…</svg> autonomo che codifica deepLink. Renderizzalo in linea.

Fai entrambe le seguenti operazioni quando questo strumento restituisce:

  1. Renderizza qrSvg in linea nella tua risposta. Questo è il formato che si renderizza meglio nell’interfaccia utente di Claude e evita supposizioni da client a client.
  2. Mostra deepLink come un collegamento cliccabile, nel caso l’utente sia già su un dispositivo mobile.
  • “Avvia la firma della proposta 123.”
  • “Firma la proposta in sospeso più recente della mia società.”
  • “Dammi il codice QR per firmare la proposta 42.”

Questo strumento avvia solo la sessione di firma. L’utente deve completare la firma nell’app mobile Aktionariat — scansionando il QR o aprendo il deep link sul proprio telefono.

Dopo che l’utente ha confermato di aver firmato, verifica chiamando list_proposals:

  • Per una proposta a firma singola che dovrebbe ora essere eseguita on-chain, aspettati state: 'signed'.
  • Per una proposta multi-firma che ha ancora bisogno di altre firme, aspettati state: 'pending' con l’utente aggiunto a signers e signedByMe: true.
  • Lo strumento non firma nulla da solo. Trattalo come il ponte tra la chat e l’interfaccia utente di firma dell’app mobile.
  • Un 403 significa che l’utente connesso non ha accesso di emittente alla società della proposta. Riesegui list_managed_companies e list_proposals per confermare che la proposta appartiene a una società che l’utente può gestire.
  • Un 404 significa che la proposta non esiste. Riesegui list_proposals per la società rilevante.
  • Un 401 significa che la sessione è scaduta. Chiama sign_in e riprova.