Object records
Browse, search, sort, and edit the records of any installed custom object type in a table, board, or calendar, then quick-create single records, run bulk status changes, and move data in and out by CSV.
Every installed object type has its own records list, opened by clicking its tile on the Objects page. From this one page you search and filter records, switch between table, board, and calendar layouts, create records one at a time, run bulk actions, and import or export by CSV.
Table, board, and calendar views
Each type opens in the layout set as its default view. You can switch layouts from the view toggle. The toggle only offers board and calendar when the type supports them: a board needs a stage set, and a calendar needs a calendar-date field. If you request a view the type cannot render, the page falls back to the table.
- Table: the default for most types. Shows up to 100 records per page, sortable, with a column picker to choose which fields appear.
- Board: a kanban of columns, one per stage. Records that have no stage land in an Unstaged column at the start. The board loads up to 500 records.
- Calendar: a month grid keyed off the type's calendar-date field. Use the previous and next controls to move between months. The calendar loads up to 500 records.
On the board, you move a record between stages with the per-card Move menu, not by dragging the card.
Searching and filtering
The search box matches your term, case-insensitively, against a record's label and the text of all of its field values, so typing USD finds records carrying that text in any field. The term is capped at 256 characters.
The status tabs are All, Open, Won, Lost, and Archived. All is the starting state and shows every status; the other tabs map to one record status each.
In the table view, records are ordered newest-created first by default. Click a sortable column header to change the order. Text, number, currency, date, datetime, select, URL, email, and phone fields are sortable; an unknown or non-sortable field reverts to the newest-created order.
Paging through the table
The table shows up to 100 records at a time and pages backward in time with the Show older control. Paging works with the default newest-created order. When you pick an explicit sort, the Show older control is hidden, so narrow the list with search or the status filter to bring the records you want onto the first page.
Creating a record
Click New (labelled with the type's singular name) to open the quick-create dialog. It shows the type's required fields plus its primary label field; the wider edit screen covers the rest. Sensitive fields are left out of quick-create. After it saves, you land on the new record's detail page.
Bulk actions
Selecting records with the row checkboxes in the table view brings up a floating bar showing how many are selected (out of those on the page). From the bar you can:
- Set status: to Open, Closed (Won), or Closed (Lost).
- Archive: move the selected records to the archived status.
- Delete: soft-delete the selected records behind a type-to-confirm prompt. Deleted records are hidden from list views but stay recoverable for 30 days via support.
Selection covers only the records on the current page, and it clears whenever the filter, sort, or view changes.
Importing records from CSV
Click Import CSV to open the import flow. The file must be UTF-8 encoded, with the first row as the header. The picker accepts files up to 25 MB and up to 10,000 rows per batch; rows past 10,000 are dropped, and the interface warns you so you can split the file or use the API.
After upload, you map each CSV column to a field. Columns whose header matches a field key or display name (case-insensitive) auto-map; choose the Don't import option to drop a column, and map each field to a single column. Every required field needs a mapping before the import can run; the dialog names any that are still missing. Click Commit import to write the records.
Values are coerced and validated by field type before each row is written: numbers and currency accept commas and currency symbols (currency is stored in cents); checkboxes read true/yes/y/1 and false/no/n/0; multi-select values split on semicolons; and any operator-defined rules on the field are enforced. A row that fails coercion or a required-value check is skipped and listed with its row number and message, so you can fix those rows and re-import only them. Object records don't count toward the usage limit that tracks your contacts and companies: that limit covers contacts and companies only, so importing thousands of Gift or Pledge records doesn't move it.
Exporting records to CSV
Click Export CSV to download a file of the records matching your current status filter and search term. The export ignores the sort, view, and paging; it pulls the whole matching set across pages, up to 25,000 records, rather than the single page on screen. Narrow with the status filter or search first if a type has more records than that.
The file is named [type]-YYYY-MM-DD.csv and downloads automatically. Its columns are id, custom_label, status, created_at, updated_at, then one column per non-archived field, keyed by field key, in display order. Currency renders as dollars, multi-select values join with a semicolon, and relation fields render as the related record's ID.
Sensitive fields in the list and detail
On a record's detail page, sensitive field values are kept off the page and shown masked; they are fetched server-side only when you click to reveal them, so they are never shipped to the browser to sit hidden behind the mask. Any operator with Reach access to the account can reveal them today. CSV export is the exception; it includes sensitive values without masking, as noted above.
Updated