Skip to main content

Address Book

The Address Book (/address-book) holds an organization's saved counterparty addresses, used to populate destination pickers in the Send flow. Reading is open to any authenticated user (read · AddressBook); adding, editing, and deleting require manage · AddressBook.

Address Book listing internal (predefined) and external entries with type tags Auto-synced internal accounts show as "Predefined" (read-only) alongside manually added external counterparties, which carry Edit / Remove actions.

Entry kinds

Each entry has an AddressBookEntryKind that drives what the user can do with it:

KindProvenanceEditable?
USER_ADDEDManually added by a userFully editable / removable
OWN_INTERNAL_ACCOUNTAuto-synced from this org's own accounts (multisigs)Read-only; renames/archives cascade from the account
BRIDGING_PERMANENTThe locked Bridging account entry, seeded per participant org on creationNever editable or removable

This means the picker always shows your own accounts and the bridging endpoint without manual entry, while still letting you save external counterparties.

Endpoints

ActionEndpointAbility
List entriesGET /address-bookread · AddressBook
Add entryPOST /address-bookmanage · AddressBook
Edit entryPATCH /address-book/:entryIdmanage · AddressBook
Delete entryDELETE /address-book/:entryIdmanage · AddressBook

Manage affordances in the UI are gated on ability.can('manage', 'AddressBook'); the API enforces the same rule.