Skip to main content

Custom Attributes

Add your own custom fields to bookings, customers, resources, partners, and users to track the data that matters to your business.

Written by Jerome Bajou
Updated today

Custom Attributes let you add your own fields to bookings, customers, resources, partners, and users — without any code changes. Define the fields you need, choose a type (text, number, date, dropdown, and more), and start capturing data that matters to your business.


What are Custom Attributes?

Every business is different. While CaptainBook comes with a rich set of built-in fields, you may need to track information that is unique to your operation — a guest's T-shirt size, a dietary preference, an internal reference number, or a VIP status.

Custom Attributes solve this by letting you define your own fields on five entity types:

  • Bookings — track extra details per reservation

  • Customers — store profile information beyond name and email

  • Resources — add metadata to your boats, vehicles, guides, etc.

  • Partners — keep notes and categorizations on distribution partners

  • Users — annotate team members with internal data

Once defined, custom attributes appear automatically in the relevant edit forms, list views, and filters — and can even trigger Workflows when their values change.


Supported Attribute Types

CaptainBook supports 10 attribute types to cover a wide range of data:

Type

Description

Example

Text

Free-form text string

Special requests, notes

Number

Numeric value

Group size, weight

Checkbox

Yes / No toggle

Is VIP, Requires transfer

Date

Date picker

Arrival date, Expiry date

Timestamp

Date and time

Follow-up scheduled at

Rating

Star rating (1–5)

Customer satisfaction

Select

Single choice from a list

T-shirt size, Language

Multi-select

Multiple choices from a list

Dietary needs, Interests

Currency

Monetary value

Tip amount, Deposit paid

Status

Color-coded label

Lead stage, Follow-up status


Where to Find Custom Attributes

Each entity type has its own Attributes page where you create and manage definitions:

  • Bookings → Bookings sidebar menu → Attributes

  • Customers → Customers sidebar menu → Attributes

  • Resources → Resources sidebar menu → Attributes

  • Partners → Partners sidebar menu → Attributes

  • Users → Users sidebar menu → Attributes

You will only see Attributes pages for entity types you have permission to manage.


Creating a Custom Attribute

To create a new attribute:

  1. Navigate to the Attributes page for the entity type you want (e.g. Bookings → Attributes).

  2. Click the Create Attribute button.

  3. Fill in the form:

  • Name (required) — a descriptive label, e.g. "Dietary Preference". A unique slug is generated automatically.

  • Type (required) — choose from the 10 supported types. Defaults to Text.

  • Description (optional) — help text shown alongside the field to guide your team.

  • Options — for Select, Multi-select, and Status types, enter one option per line. For Status, you can also pick a color for each option (green, yellow, red, blue, gray, purple, or orange).

  • Validation Rules — optionally enforce constraints like required, minimum/maximum length, min/max value, or a regex pattern (depending on the type).

  1. Click Save. The attribute is now live and will appear on forms for that entity type.

Important: The attribute type and options cannot be changed after creation. Choose carefully — if you need a different type, create a new attribute and archive the old one.


Editing a Custom Attribute

From the Attributes page, click the three-dot menu (⋯) on an attribute and choose Edit. You can update:

  • Name — rename the attribute (the slug stays the same for consistency).

  • Description — update the help text.

  • Validation Rules — change which constraints apply.

Type and options are locked after creation to protect existing data.


Sorting Attributes

You can drag and drop attributes on the list to control the order in which they appear on edit forms. The order you set here is the order your team sees when filling in data.

You can also sort the management list itself by name, type, or creation date using the sort controls at the top.


Filling in Custom Attribute Values

Once attributes are defined, they appear automatically when editing the relevant entity. For example, if you create a "Dietary Preference" attribute for Customers:

  1. Open a customer record and click Edit.

  2. Scroll to the Custom Attributes section.

  3. Fill in the value — a text field, dropdown, date picker, etc. depending on the type.

  4. Save the record. The value is stored and displayed going forward.


Filtering and Searching by Custom Attributes

Custom attribute values are integrated into list views:

  • Filters — on list pages (Customers, Bookings, etc.), you can filter by custom attribute values. For Select and Multi-select attributes, choose from the predefined options.

  • Search — the global search on list pages also searches across custom attribute values, so you can find records by the data you've stored.


Using Custom Attributes in Workflows

Custom Attributes integrate with CaptainBook's Workflows automation system in two ways:

Trigger: Custom Attribute Updated

When a custom attribute value changes on any entity, CaptainBook fires a Custom Attribute Updated event. You can use this as a workflow trigger to automate actions — for example:

  • When a customer's "VIP Status" changes to "Yes", send a welcome email.

  • When a booking's "Follow-up Status" changes to "Needs Review", notify the manager.

The trigger provides the entity, the attribute definition, and both the old and new values as context data.

Actions: Set Custom Attributes

Workflow actions like Update Customer and Update Booking can set custom attribute values as part of an automated flow. This lets you enrich records automatically — for example, marking a customer as "Repeat Guest" after their third booking.


Archiving and Restoring Attributes

If you no longer need an attribute, you can archive it instead of permanently deleting it:

  1. Click the three-dot menu (⋯) on the attribute.

  2. Select Delete. The attribute is soft-deleted (archived).

  3. Archived attributes appear in a collapsible Archived section at the bottom of the page.

Archiving hides the attribute from forms and filters but preserves the data. This means you can still reference historical values if needed.


Useful Tips

  • Copy the slug or ID — from the three-dot menu, you can copy the attribute's slug or ID to the clipboard. This is handy when referencing attributes in workflows or API integrations.

  • Usage count — the Attributes page shows how many records currently use each attribute, helping you gauge adoption.

  • Status colors — for Status-type attributes, color-coded badges (green, yellow, red, blue, gray, purple, orange) make it easy to scan records at a glance.

  • Validation is optional — you can enforce rules (required, min/max, regex) or leave attributes flexible. Validation applies to manual form edits only.

  • Permissions — custom attribute management respects your existing permissions. If a team member can edit bookings, they can also fill in booking custom attributes.


FAQ

Can I change the type of an attribute after creating it?

No. The type is locked after creation to protect existing data. Create a new attribute with the desired type and archive the old one.

What happens to data when I archive an attribute?

The data is preserved. Archiving only hides the attribute from forms and filters. You can view archived attributes in the collapsed section at the bottom of the Attributes page.

Can I use custom attributes in email templates or notifications?

Yes — custom attribute values are available as context data in Workflows. You can reference them using the attribute slug in your workflow actions and templates.

Is there a limit to how many custom attributes I can create?

There is no hard limit. Create as many as your business needs.

Did this answer your question?