> Source: https://builder-docs.ema.ai/api-reference/ai-employees/data-model
> Title: AI Employee Data Model

# AI Employee Data Model

This page defines the protobuf data structures used to configure AI Employees (personas) in the Ema platform.

## PersonaConfig

The top-level configuration object for an AI Employee.

Field

Type

Description

`id`

string

Unique identifier (UUID)

`name`

string

Display name of the AI Employee

`description`

string

Brief description of the AI Employee's purpose

`icon`

string

Icon identifier

`status`

TemplateStatus

Deprecated template status field

`editable`

bool

Whether the configuration is editable

`version`

int32

Configuration version number

`rich_detail_description`

string

Rich text description (supports formatting)

`widgets`

repeated Widget

List of widget configurations

`display_settings`

DisplaySettings

UI display configuration

`project_settings`

ProjectSettings

Project-level settings and defaults

`trigger`

PersonaTrigger

Operational trigger configuration

`persona_status`

PersonaStateEnum

Persona state

`access_level`

PersonaAccessLevel

Computed access level

`persona_trigger_type`

PersonaTriggerType

User-facing trigger type such as chat or dashboard

`workflow_dashboard_id`

string

Associated workflow dashboard ID

`template_id`

string

Template ID this persona was instantiated from

`persona_group_id`

string

Optional persona group identifier

## Widget

A Widget connects the AI Employee to an external data source or integration.

Field

Type

Description

`name`

string

Unique name of the widget instance

`type`

WidgetType

The type of widget

`<widget field>`

object

Type-specific configuration stored under the matching widget field (for example `file_upload` or `chatbot_sdk_config`)

### WidgetType Enum

Value

Integer

Description

`SCRAPE_URLS`

0

URL scraping configuration

`EXAMPLE_TRIGGERS`

1

Example triggers (deprecated)

`WEBSEARCH_ENABLED`

2

Web search enablement

`FILE_UPLOAD`

3

Direct file upload

`DATA_INTEGRATION`

4

Data source integration

`ANSWER_FORMAT`

5

Answer format configuration

`FUSION_MODEL`

6

Fusion LLM model selection

`EXAMPLE_QUESTIONS`

7

Example questions for the AI Employee

`DATA_PROTECTION`

8

Data protection settings

`COPYRIGHT_CHECK`

9

Copyright checking

`STEPS`

10

Workflow steps configuration

`TICKET_CATEGORY_CONFIG`

11

Ticket category configuration

`CUSTOM_INSTRUCTIONS`

12

Custom instructions

`GLOSSARY`

13

Glossary terms

`HEIRARCHICAL_TAGS`

14

Hierarchical tags

`PROPOSAL_TEMPLATE_TYPE`

15

Proposal template type

`DOC_SECTION_CONFIG`

16

Document section configuration

`COMPANY_DETAILS`

17

Company details

`EMAIL_INTEGRATION`

18

Email integration

`TARGET_AUDIENCE`

19

Target audience (deprecated)

`EMAIL_CONFIGURATION`

20

Email configuration (deprecated)

`CAMPAIGN_GOAL_SETUP`

21

Campaign goal setup

`BASE_CATEGORY_WIDGET`

22

Base category widget

`TITLE_WITH_TEXT_AREA`

23

Title with text area

`LINKEDIN_INTEGRATION`

24

LinkedIn integration

`CANDIDATE_SEARCH_DETAILS`

25

Candidate search details

`CANDIDATE_SEARCH_SCORECARD`

26

Candidate search scorecard

`TARGET_COMPANY_SEARCH`

27

Target company search

`CHATBOT_SDK_CONFIG`

28

Chatbot SDK configuration

`FILE_TAGGING`

29

File tagging

`MULTI_SOURCE_TARGET_AUDIENCE`

30

Multi-source target audience

`FILE_LINKING`

31

File linking

`TEMPLATE_INPUT`

32

Template input

`FEEDBACK_MESSAGE`

33

Feedback message

`BLOCK_USERS`

34

Block users

`ENGAGEMENT_CONFIGURATION`

35

Engagement configuration

`SFO_ID_CONFIG`

36

SFO ID configuration

`VOICEBOT_VOICE_SETTINGS`

38

Voicebot voice settings

`VOICEBOT_CONVERSATION_SETTINGS`

39

Voicebot conversation settings

`VOICEBOT_FEEDBACK_COLLECTION`

40

Voicebot feedback collection

`VOICEBOT_CALL_SETTINGS`

41

Voicebot call settings

`VOICEBOT_DATA_STORAGE_SETTINGS`

42

Voicebot data storage settings

`VOICEBOT_VAD_SETTINGS`

43

Voicebot VAD settings

`VOICEBOT_PHONE_NUMBER`

44

Voicebot phone number

`DOCUMENT_INSTRUCTIONS_CONFIG`

45

Document instructions configuration

`DOCUMENT_OUTLINE_SOURCE`

46

Document outline source

`STYLE_GUIDE_SOURCE`

47

Style guide source

`WORKFLOW_DYNAMIC_INPUTS`

48

Workflow dynamic inputs

`EMAIL_INTEGRATION_V2`

49

Email integration v2 (API-powered)

`AGENT_QA_RULE_GENERATION`

50

Agent QA rule generation

`EMAIL_EMPLOYEE_INBOX_PREFERENCES`

51

Email employee inbox preferences

`DOCUMENT_APPROVAL`

52

Document approval

`TOOL_WIDGET`

53

Custom tools widget (deprecated)

`AGENT_QA_INSIGHT_GENERATION`

54

Agent QA insight generation

`TOOL_PERSONA_CONFIG`

55

Tool persona configuration

`RFP_EXTRACTED_FIELDS`

56

RFP extracted fields

Complete list of WidgetType values from the proto definition. Note that value 37 is not assigned.

## DisplaySettings

Controls how the AI Employee appears in the UI.

Field

Type

Description

`display_type`

DisplayType

Display mode for the persona UI

`pages`

repeated DisplayPage

Pages shown for multi-page or tabbed displays

Complete list of DisplaySettings fields.

## ProjectSettings

Project-level configuration for the AI Employee.

Field

Type

Description

`enabled`

bool

Whether projects are enabled for this persona

`display_name`

string

Display name used for projects in the UI

`project_type`

ProjectType

Project type associated with the persona

`allowed_sub_projects`

repeated SubProject

Allowed sub-project categories

`selected_sub_project_type`

SubProjectType

Currently selected sub-project type

`workflows`

repeated ProjectWorkflow

Project workflows associated with the persona

Complete list of ProjectSettings fields.

## PersonaTrigger

Defines how the AI Employee is triggered.

Field

Type

Description

`type`

PersonaTrigger.TriggerType

Operational trigger source

`integration_id`

string

Integration ID used for data-ingestion triggers

`triggerer_email`

string

Email address associated with the trigger when applicable

### PersonaTriggerType Enum

Value

Integer

Description

`CHAT`

1

Triggered by a chat conversation

`DASHBOARD`

2

Triggered by a dashboard row operation

`THREAD`

3

Triggered by a thread interaction

`CHATBOT`

4

Triggered by an external chatbot

`DOCUMENT_GENERATION`

5

Triggered by a document generation request

`CONVERSATIONAL_EMAIL`

6

Triggered by a conversational email interaction

`AGENT_QA`

7

Triggered by Agent QA evaluation

## TemplateStatus Enum

Value

Integer

Description

`ACTIVE`

0

Template is active

`INACTIVE`

1

Template is inactive

## Related

-   [AI Employee Overview](/legacy-docs/api-reference/ai-employees/overview) -- Concepts and architecture
-   [AI Employee API](/legacy-docs/api-reference/ai-employees/ai-employee-api) -- CRUD endpoints
-   [Workflow Data Model](/legacy-docs/api-reference/workflows/workflow-data-model) -- Workflow structures used by AI Employees
