4 min readUpdated Mar 2, 2026

ContactManagerTile Documentation

Overview

The ContactManagerTile is a fully functional Contact Management dashboard tile providing CRUD (Create, Read, Update, Delete) capabilities. It enables users to manage contacts seamlessly, storing them locally and allowing for operations like editing, deleting, and importing via CSV. The tile is designed to enhance the usability of data management directly within a dashboard interface, ensuring users can maintain an organized contact list efficiently.

Purpose

The primary objective of the ContactManagerTile is to facilitate the management of contacts for users, enabling tasks such as searching, adding, editing, deleting, and importing contacts. It interacts with an external API to fetch and manipulate contact data while providing a user-friendly interface.

Settings

The ContactManagerTile accepts various settings to customize its behavior and appearance. Detailed descriptions of each setting are outlined below:

1. Title

2. Subtitle

3. ID (tileId)

4. Storage Provider

How It Works

  1. State Management: The tile manages its state internally. States include contacts, loading status, errors, search queries, sort fields, and CRUD operation handlers.

  2. Fetching Data: Upon initialization, the tile fetches contact data from an API endpoint (/api/apps/contacts) and configuration settings from (/api/apps/config). The fetched contact data can be filtered, searched, and sorted based on user input.

  3. Contact Display: The tile displays contacts in a table format. Users can view details such as name, email, phone, company, and job title. It also supports inline editing with a form.

  4. CRUD Operations: Users can add a new contact, edit existing ones, or delete contacts. These operations send requests to the backend API to persist changes.

  5. CSV Import/Export: The tile allows users to import contacts from a CSV file. The CSV parser reads the contents and maps fields to the contact schema.

  6. AI Integrations: The tile integrates with a global AI context, exposing contact data to an AI assistant for advanced querying and management.

Expected Data

The ContactManagerTile expects contact data in a specific structure that includes the following fields:

The backend should ensure that these fields are always provided correctly in responses to maintain the integrity of data management.

Use Cases & Examples

Use Case 1: Personal Contact Management

An individual user wants to maintain a contacts list encompassing family and friends, needing straightforward access to manage details like phone numbers and addresses.

Use Case 2: Business Contact Database

A small business owner requires a way to manage their clients. The business owner utilizes the ContactManagerTile to add, edit, and remove clients efficiently, ensuring that employee details are up to date.

Use Case 3: Importing Large Contact Lists

A user needs to quickly populate their contact list with a significant number of entries from a CSV file. They can utilize the tile’s import feature to bulk upload contact details.

Example Configuration

For a small business needing an organized client database, they may configure the ContactManagerTile as follows:

After setup, the user can then prepare a CSV file with the following data:

csv
"First Name","Last Name","Email","Phone","Company","Job Title"
"John","Doe","john.doe@example.com","1234567890","Acme Corp","Sales Manager"
"Jane","Smith","jane.smith@example.com","0987654321","Tech Solutions","CTO"

They would upload this CSV using the tile’s import functionality. The system would parse the file, ensure each contact is formatted correctly, and populate the contacts list displayed within the tile interface.