Salta ai contenuti

list_proposals

Per gli emittenti: elenca le proposte multisig su un’azienda gestita, ordinate dalla più recente per prima. Ogni riga descrive la proposta con dettagli sufficienti per ragionare sul suo stato e decidere se firmarla.

Richiede l’accesso e l’accesso da emittente all’azienda richiesta. Chiama prima list_managed_companies per ottenere un companyId valido.

CampoTipoObbligatorioDescrizione
companyintegerID dell’azienda di un’azienda che l’utente registrato è autorizzato a gestire.
statestringNoFiltra per stato: pending, signed, o failed. Ometti per elencare tutti gli stati.
pageNumberintegerNoIndice di pagina a base zero. Predefinito 0 (pagina più recente).
pageSizeintegerNoProposte per pagina. Predefinito 10, massimo 100. Aumenta solo quando l’utente lo chiede.

Un envelope di riepilogo con metadati di paginazione e le proposte sulla pagina richiesta:

CampoTipoDescrizione
companyIdintegerL’ID dell’azienda a cui appartengono le proposte.
statestringFiltro di stato applicato, se presente. Omesso quando si elencano tutti gli stati.
pageNumberintegerIndice di pagina a base zero.
pageSizeintegerDimensione della pagina utilizzata per la richiesta.
totalElementsintegerNumero totale di proposte corrispondenti al filtro.
totalPagesintegerNumero totale di pagine alla dimensione di pagina richiesta.
itemsarrayProposte su questa pagina.

Ogni proposta in items contiene:

CampoTipoDescrizione
idintegerID della proposta — input obbligatorio per sign_proposal.
noncestringNonce dell’account riservato per questa proposta (stringa decimale). Obbligatorio durante la firma.
gasPricenumberPrezzo del gas bloccato per questa proposta (wei). Obbligatorio durante la firma.
creationTimestampstringTimestamp ISO quando la proposta è stata creata.
executionDatetimestringTimestamp ISO quando la proposta è stata eseguita on-chain. Assente mentre la proposta è in sospeso o è fallita.
declarationstringFirma del metodo in stile Solidity chiamato, ad es. setPaymentHub(address hub).
titlestringTitolo breve leggibile dall’uomo.
messagestringDescrizione più completa e leggibile dall’uomo di ciò che fa la proposta.
toAddressstringIndirizzo del contratto che la proposta chiamerebbe.
hexDatastringDati di chiamata codificati ABI (esadecimale). Non direttamente leggibile dall’utente; codifica i parametri decodificati della transazione.
hashstringHash della transazione on-chain. Presente solo dopo che la proposta è stata eseguita.
signedByarrayFirmatari che hanno già firmato, come oggetti { name }.
youHaveSignedbooleanSe l’utente registrato ha già firmato questa proposta.
initiatorNamestringNome della persona che ha creato la proposta.
statestringpending · signed · failed.
errorMessagestringMotivo del fallimento segnalato dal backend. Presente solo quando state è failed.

Gli altri campi dal blocco trans dettagliato del backend (limite di gas, valore, indirizzo di provenienza, numero di blocco, ecc.) e le etichette / figli / catena della proposta vengono rimossi dall’adattatore e non raggiungono mai il contesto del modello.

  • “Elenca le proposte multisig in sospeso della mia azienda.”
  • “Mostra le proposte firmate più recenti per l’azienda 42.”
  • “Quali proposte in sospeso sulla mia azienda non ho ancora firmato?”
  • “L’ultima proposta ha avuto successo o è fallita?”
  • Chiama sempre list_managed_companies per primo — passare un ID company per il quale l’utente non è autorizzato restituisce 403.
  • Usa state: 'pending' quando l’utente chiede “cosa deve essere firmato?” — restituisce solo le proposte in attesa di altre firme o esecuzione.
  • Il flag youHaveSigned è il modo canonico per sapere se l’utente registrato deve ancora firmare una determinata proposta. Non inferire da solo da signedBy.
  • Un 404 significa che l’azienda non esiste; esegui di nuovo list_managed_companies. Un 401 significa che la sessione è scaduta; chiama sign_in e riprova.