SIGNALS Documentation
API Reference

Members

Manage contacts, organisations, venues, and user accounts in the CRM.

Overview

Members is the universal entity in Signals — contacts, organisations, venues, and user accounts are all stored as members differentiated by their membership_type. This unified approach allows shared contact details, custom fields, and relationships across all entity types.

Type Description
Contact Individual people (clients, crew, suppliers)
Organisation Companies, businesses, trusts
Venue Physical locations for events
User System users with login credentials

Members List

Route: /members

Browse all members with search, type filtering, sorting, and bulk operations. The list is powered by the reusable DataTable component.

  • Search — filter by name (debounced, case-insensitive)
  • Type filter — chip buttons to show All, Contacts, Organisations, or Venues with counts
  • Column sorting — click column headers to sort by Name, Type, Status, or Created date
  • Column filtering — inline filters on Type (select) and Status (select)
  • Pagination — 12 members per page (configurable: 12, 24, 48)
  • Row selection — checkbox selection with shift-click range support
  • Bulk actions — delete multiple selected members at once
Column Description
Avatar Member initials avatar
Name Clickable link to member detail page
Type Membership type badge
Primary Email First primary email, or first available
Primary Phone First primary phone, or first available
Status Active or Inactive badge
Tags Associated tags
Created Creation date

Row Actions

Each row has a dropdown menu with View, Edit, and Delete actions. Deleting a member shows a confirmation modal and soft-deletes the record.

Bulk Actions

Select multiple members using checkboxes, then use the bulk action bar to delete selected members. A confirmation modal appears before deletion.

Member Detail

Route: /members/{member}

The detail page shows a header with the member's name, type badge, and status badge, followed by tab navigation for managing related data.

Overview Tab

The overview tab displays two sections:

  • Details — name, type, description, default currency, locale, and organisation tax class (when set)
  • Summary — counts of addresses, emails, phones, and links, plus linked organisations or contacts with clickable links

Tabs

Tab Route Description
Overview /members/{member} Details, summary counts, linked members
Addresses /members/{member}/addresses Physical addresses
Emails /members/{member}/emails Email addresses
Phones /members/{member}/phones Phone numbers
Links /members/{member}/links Web links and social profiles
Custom Fields /members/{member}/custom-fields Custom field values grouped by field group
Relationships /members/{member}/relationships Links between contacts and organisations

Creating & Editing Members

Routes: /members/create, /members/{member}/edit

Field Description Required
Name Member's name Yes
Membership Type Contact, Organisation, Venue, or User Yes
Active Whether the member is active No (default: true)
Description Free-text description No
Locale Language/region code (e.g. en-GB) No
Default Currency ISO 4217 currency code No
Organisation Tax Class Tax classification for billing No

Contact Details

Each member can have multiple addresses, emails, phones, and links. These are polymorphic — the same system is shared across members, stores, and future entities.

Addresses

Each address can have a label (e.g. "Head Office"), street, city, county, postcode, country, type (from the AddressType list), and a primary flag. Only one address can be primary per member.

Emails

Each email has an address, type (from the EmailType list), and a primary flag.

Phones

Each phone has a number, type (from the PhoneType list), and a primary flag.

Each link has a URL, optional display name, and type (from the LinkType list).

Relationships

Contacts can be linked to organisations (and vice versa) with a relationship type label (e.g. "employee", "contractor") and an optional primary flag. The relationships tab shows all linked members and allows adding new relationships.

Custom Fields

Custom fields configured for the "Member" module appear on the Custom Fields tab, grouped by their custom field group. Fields display their current value or "No value set" for empty fields.

Permissions

Permission Description
members.create Create new members
members.edit Edit existing members
members.delete Delete members
members.view View member details