Understand the shared entity model that links records across Office, Sales, Careers, Project, and Guard.
Essal’s six apps share a common data model that allows records from different apps to reference and relate to each other. Understanding this model helps you design integrations that move data naturally across the platform.
Essal uses soft deletion by default. Deleted entities are marked "status": "deleted" and excluded from list responses unless you pass ?include_deleted=true. Hard deletion is available for data retention compliance and is irreversible.
Hard deletion cannot be undone and will cascade to all linked_resources references pointing to the deleted entity. Guard audit logs for the entity are preserved regardless.
All entity types support custom fields, allowing you to extend the data model without schema changes. Custom fields are defined per workspace and are accessible in the API via the custom_fields object on any entity response.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Essal Developer Docs","colors":{"primary":"#0066FF","light":"#3D8BFF","dark":"#0050B4"},"logo":{"light":"https://mintcdn.com/essal/5qVV5p4Y6tAbM76k/logo/logo.svg?fit=max\u0026auto=format\u0026n=5qVV5p4Y6tAbM76k\u0026q=85\u0026s=706e0f6b7817c8a2af008f21830be42b","dark":"https://mintcdn.com/essal/5qVV5p4Y6tAbM76k/logo/logo.svg?fit=max\u0026auto=format\u0026n=5qVV5p4Y6tAbM76k\u0026q=85\u0026s=706e0f6b7817c8a2af008f21830be42b","href":"https://essal.cloud"},"favicon":"https://mintcdn.com/essal/McBxieepy9CPQ7G0/favicon.png?fit=max\u0026auto=format\u0026n=McBxieepy9CPQ7G0\u0026q=85\u0026s=10fba0b2f9e4f93957e9338d17ef82cb","api":{"playground":{}},"background":{},"footer":{"socials":{"github":"https://github.com/essal","facebook":"https://facebook.com/essal","linkedin":"https://www.linkedin.com/company/essal"},"links":[{"items":[{"label":"Office","href":"https://essal.cloud/products/office"},{"label":"Access","href":"https://essal.cloud/products/access"},{"label":"Sales","href":"https://essal.cloud/products/sales"},{"label":"Careers","href":"https://essal.cloud/products/careers"},{"label":"Project","href":"https://essal.cloud/products/project"},{"label":"Guard","href":"https://essal.cloud/products/guard"}]},{"items":[{"label":"Help Center","href":"https://support.essal.cloud"},{"label":"Training","href":"https://essal.cloud/training"},{"label":"Security Center","href":"https://essal.cloud/security"},{"label":"Legal Center","href":"https://legal.essal.cloud/"},{"label":"Certifications","href":"https://credentials.essal.cloud/"}]},{"items":[{"label":"About Us","href":"https://essal.cloud/about"},{"label":"Careers","href":"https://careers.essal.cloud/"},{"label":"Newsroom","href":"https://newsroom.essal.cloud/"},{"label":"Become a Partner","href":"https://essal.cloud/partners"},{"label":"Brand Assets","href":"https://brand.essal.cloud/"},{"label":"Contact","href":"https://essal.cloud/contact"}]},{"items":[{"label":"Privacy","href":"https://legal.essal.cloud/privacy"},{"label":"Terms of use","href":"https://legal.essal.cloud/terms"},{"label":"Leave Feedback","href":"https://review.essal.cloud/"},{"label":"Status Page","href":"https://status.essal.cloud/"}]}]},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"essal","hasAudioNarration":false,"actualSubdomain":"essal","customDomains":["developers.essal.cloud"],"gitSource":{"type":"github","owner":"essalhq","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"collectionId":"4d503a57-591d-47e7-9d7d-1abd2ae897c8","liveDeploymentHistoryId":"6a5383090b5bb62de3ce1c58","schemaVersion":"v3"},"entitlements":{},"buildId":"6a5383090b5bb62de3ce1c58:success","clientVersion":"0.0.4045","searchFilterCounts":[{"language":"default","tag":"Documentation","count":38},{"language":"default","tag":"API Reference","count":23},{"language":"default","tag":"SDKs \u0026 Tools","count":8},{"language":"default","tag":"Platform Concepts","count":6},{"language":"default","tag":"Getting Started","count":5},{"language":"default","tag":"Integrations","count":5},{"language":"default","tag":"Official SDKs","count":5},{"language":"default","tag":"Webhooks","count":4},{"language":"default","tag":"Changelog","count":4},{"language":"default","tag":"Changelog Updates","count":4}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"a[href*=\"mintlify.com?utm_campaign=poweredBy\"]{display:none!important}"}],"page":{"pagePath":"concepts/data-model","slug":"/concepts/data-model","pageMetadata":{"title":"Data Model","description":"Understand the shared entity model that links records across Office, Sales, Careers, Project, and Guard.","href":"/concepts/data-model"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Understand the shared entity model that links records across Office, Sales, Careers, Project, and Guard.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,p:`p`,pre:`pre`,span:`span`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Heading,Table,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Essal’s six apps share a common data model that allows records from different apps to reference and relate to each other. Understanding this model helps you design integrations that move data naturally across the platform.`}),`\n`,_jsx(Heading,{level:`2`,id:`core-entity-types`,children:`Core Entity Types`}),`\n`,_jsx(_components.p,{children:`Every entity in Essal has a universally unique ID with a type prefix:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Prefix`}),_jsx(_components.th,{children:`Entity`}),_jsx(_components.th,{children:`App`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`doc_`})}),_jsx(_components.td,{children:`Document`}),_jsx(_components.td,{children:`Office`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`sht_`})}),_jsx(_components.td,{children:`Sheet`}),_jsx(_components.td,{children:`Office`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`fil_`})}),_jsx(_components.td,{children:`File`}),_jsx(_components.td,{children:`Office`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`usr_`})}),_jsx(_components.td,{children:`User`}),_jsx(_components.td,{children:`Access`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`grp_`})}),_jsx(_components.td,{children:`Group`}),_jsx(_components.td,{children:`Access`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`cnt_`})}),_jsx(_components.td,{children:`Contact`}),_jsx(_components.td,{children:`Sales`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`deal_`})}),_jsx(_components.td,{children:`Deal`}),_jsx(_components.td,{children:`Sales`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`pip_`})}),_jsx(_components.td,{children:`Pipeline`}),_jsx(_components.td,{children:`Sales`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`job_`})}),_jsx(_components.td,{children:`Job Posting`}),_jsx(_components.td,{children:`Careers`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`app_`})}),_jsx(_components.td,{children:`Application`}),_jsx(_components.td,{children:`Careers`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`proj_`})}),_jsx(_components.td,{children:`Project`}),_jsx(_components.td,{children:`Project`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`task_`})}),_jsx(_components.td,{children:`Task`}),_jsx(_components.td,{children:`Project`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`pol_`})}),_jsx(_components.td,{children:`Policy`}),_jsx(_components.td,{children:`Guard`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`evt_`})}),_jsx(_components.td,{children:`Event / Audit Entry`}),_jsx(_components.td,{children:`Guard`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`linked-resources`,children:`Linked Resources`}),`\n`,_jsxs(_components.p,{children:[`Any entity can carry a `,_jsx(_components.code,{children:`linked_resources`}),` array that holds typed references to related entities in other apps:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`8`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`8`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"proj_01HXYZ9876\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Website Relaunch\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"linked_resources\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"sales.deal\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"deal_01HXYZ5432\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Acme Corp - Web Retainer\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"office.document\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"doc_01HXYZ1111\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Project Brief\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`ownership-and-attribution`,children:`Ownership and Attribution`}),`\n`,_jsx(_components.p,{children:`All entities carry a standard set of ownership fields:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`7`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"created_by\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"usr_01HXYZ1234\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"updated_by\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"usr_01HXYZ5678\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"created_at\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-05-01T09:00:00Z\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"updated_at\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-06-20T11:30:00Z\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"workspace_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"ws_01HXYZABC\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`soft-deletion`,children:`Soft Deletion`}),`\n`,_jsxs(_components.p,{children:[`Essal uses soft deletion by default. Deleted entities are marked `,_jsx(_components.code,{children:`\"status\": \"deleted\"`}),` and excluded from list responses unless you pass `,_jsx(_components.code,{children:`?include_deleted=true`}),`. Hard deletion is available for data retention compliance and is irreversible.`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Hard deletion cannot be undone and will cascade to all `,_jsx(_components.code,{children:`linked_resources`}),` references pointing to the deleted entity. Guard audit logs for the entity are preserved regardless.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`custom-fields`,children:`Custom Fields`}),`\n`,_jsxs(_components.p,{children:[`All entity types support custom fields, allowing you to extend the data model without schema changes. Custom fields are defined per workspace and are accessible in the API via the `,_jsx(_components.code,{children:`custom_fields`}),` object on any entity response.`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`8`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`8`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"cnt_01HXYZ9999\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"display_name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"John Smith\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"custom_fields\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"account_tier\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"enterprise\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"region\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"EMEA\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Data Model","description":"Understand the shared entity model that links records across Office, Sales, Careers, Project, and Guard.","href":"/concepts/data-model"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Core Entity Types","slug":"core-entity-types","depth":2,"children":[]},{"title":"Linked Resources","slug":"linked-resources","depth":2,"children":[]},{"title":"Ownership and Attribution","slug":"ownership-and-attribution","depth":2,"children":[]},{"title":"Soft Deletion","slug":"soft-deletion","depth":2,"children":[]},{"title":"Custom Fields","slug":"custom-fields","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"essal","siteName":"Essal Developer Docs","title":"Data Model - Essal Developer Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-07-12T12:05:43.585Z","originalFileLocation":"concepts/data-model.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Understand the shared entity model that links records across Office, Sales, Careers, Project, and Guard.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Essal Developer Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/essal/hV1lHJlq_XIJhUPP/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/essal/hV1lHJlq_XIJhUPP/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/essal/hV1lHJlq_XIJhUPP/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/essal/hV1lHJlq_XIJhUPP/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/essal/hV1lHJlq_XIJhUPP/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/essal/hV1lHJlq_XIJhUPP/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/essal/hV1lHJlq_XIJhUPP/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/essal/hV1lHJlq_XIJhUPP/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/essal/hV1lHJlq_XIJhUPP/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Data Model - Essal Developer Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Understand the shared entity model that links records across Office, Sales, Careers, Project, and Guard.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Essal Developer Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://developers.essal.cloud/concepts/data-model\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://essal.mintlify.app/_mintlify/api/og/v2?division=Platform+Concepts\u0026amp;title=Data+Model\u0026amp;description=Understand+the+shared+entity+model+that+links+records+across+Office%2C+Sales%2C+Careers%2C+Project%2C+and+Guard.\u0026amp;theme=d5c245af879c7f969a007e7d\u0026amp;signature=697dde16bdf23461b2a86331f768e85d05e2d513a385d5e0cf78590335ca8348\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Data Model - Essal Developer Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Understand the shared entity model that links records across Office, Sales, Careers, Project, and Guard.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://essal.mintlify.app/_mintlify/api/og/v2?division=Platform+Concepts\u0026amp;title=Data+Model\u0026amp;description=Understand+the+shared+entity+model+that+links+records+across+Office%2C+Sales%2C+Careers%2C+Project%2C+and+Guard.\u0026amp;theme=d5c245af879c7f969a007e7d\u0026amp;signature=697dde16bdf23461b2a86331f768e85d05e2d513a385d5e0cf78590335ca8348\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/essal/hV1lHJlq_XIJhUPP/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Essal Developer Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0066FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://developers.essal.cloud/concepts/data-model\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/concepts/data-model.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://developers.essal.cloud/#organization\",\"name\":\"Essal Developer Docs\",\"url\":\"https://developers.essal.cloud\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/essal/5qVV5p4Y6tAbM76k/logo/logo.svg?fit=max\u0026auto=format\u0026n=5qVV5p4Y6tAbM76k\u0026q=85\u0026s=706e0f6b7817c8a2af008f21830be42b\"}},{\"@type\":\"WebSite\",\"@id\":\"https://developers.essal.cloud#website\",\"name\":\"Essal Developer Docs\",\"url\":\"https://developers.essal.cloud\",\"publisher\":{\"@id\":\"https://developers.essal.cloud/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://developers.essal.cloud/concepts/data-model#webpage\",\"url\":\"https://developers.essal.cloud/concepts/data-model\",\"name\":\"Data Model\",\"description\":\"Understand the shared entity model that links records across Office, Sales, Careers, Project, and Guard.\",\"dateModified\":\"2026-07-12T12:05:43.585Z\",\"isPartOf\":{\"@id\":\"https://developers.essal.cloud#website\"},\"breadcrumb\":{\"@id\":\"https://developers.essal.cloud/concepts/data-model#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://developers.essal.cloud/concepts/data-model#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Platform Concepts\",\"item\":\"https://developers.essal.cloud/concepts/workspace\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Data Model\",\"item\":\"https://developers.essal.cloud/concepts/data-model\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://developers.essal.cloud/concepts/data-model#article\",\"headline\":\"Data Model\",\"name\":\"Data Model\",\"description\":\"Understand the shared entity model that links records across Office, Sales, Careers, Project, and Guard.\",\"url\":\"https://developers.essal.cloud/concepts/data-model\",\"mainEntityOfPage\":{\"@id\":\"https://developers.essal.cloud/concepts/data-model#webpage\"},\"dateModified\":\"2026-07-12T12:05:43.585Z\",\"publisher\":{\"@id\":\"https://developers.essal.cloud/#organization\"},\"isPartOf\":{\"@id\":\"https://developers.essal.cloud#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Essal Developer Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Essal Developer Docs","nav":{"global":null,"tabs":[{"tab":"Documentation","groups":[{"group":"Getting Started","pages":[{"title":"Introduction","href":"/introduction"},{"title":"Quickstart","href":"/getting-started/quickstart"},{"title":"Authentication","href":"/getting-started/authentication"},{"title":"Environments","href":"/getting-started/environments"},{"title":"Rate Limits","href":"/getting-started/rate-limits"}]},{"group":"Platform Concepts","pages":[{"title":"Workspaces","href":"/concepts/workspace"},{"title":"Apps","href":"/concepts/apps"},{"title":"Users \u0026 Roles","href":"/concepts/users-and-roles"},{"title":"Organizations","description":"Understand how Essal Organizations group multiple workspaces under a single account for enterprise deployments.","href":"/concepts/organizations"},{"title":"Data Model","href":"/concepts/data-model"},{"title":"Events","description":"Understand Essal's async event system — how app-level events are produced, routed, and consumed via webhooks.","href":"/concepts/events"}]},{"group":"App Guides — Office","pages":[{"title":"Create a Document","href":"/guides/office/create-document"},{"title":"Collaborate in Real Time","href":"/guides/office/collaborate-in-real-time"},{"title":"Export Formats","href":"/guides/office/export-formats"}]},{"group":"App Guides — Access","pages":[{"title":"Set Up SSO","href":"/guides/access/setup-sso"},{"title":"Provision Users","href":"/guides/access/provision-users"},{"title":"Manage Directories","href":"/guides/access/manage-directories"}]},{"group":"App Guides — Sales","pages":[{"title":"Import Contacts","href":"/guides/sales/import-contacts"},{"title":"Manage Pipeline","href":"/guides/sales/manage-pipeline"},{"title":"Track Deals","href":"/guides/sales/track-deals"}]},{"group":"App Guides — Careers","pages":[{"title":"Post a Job","href":"/guides/careers/post-job"},{"title":"Review Applicants","href":"/guides/careers/review-applicants"},{"title":"Manage Hiring Pipeline","href":"/guides/careers/manage-pipeline"}]},{"group":"App Guides — Project","pages":[{"title":"Create a Project","href":"/guides/project/create-project"},{"title":"Manage Tasks","href":"/guides/project/manage-tasks"},{"title":"Track Time","href":"/guides/project/track-time"}]},{"group":"App Guides — Guard","pages":[{"title":"Configure Policies","href":"/guides/guard/configure-policies"},{"title":"View Audit Trail","href":"/guides/guard/view-audit-trail"},{"title":"Threat Alerts","href":"/guides/guard/threat-alerts"}]},{"group":"Integrations","pages":[{"title":"Integrations Overview","href":"/integrations/overview"},{"title":"Webhooks","href":"/integrations/webhooks"},{"title":"OAuth Apps","href":"/integrations/oauth-apps"},{"title":"SSO / SAML","href":"/integrations/sso-saml"},{"title":"Third-Party Integrations","href":"/integrations/third-party"}]},{"group":"Security \u0026 Compliance","pages":[{"title":"Data Privacy","href":"/security/data-privacy"},{"title":"Encryption","href":"/security/encryption"},{"title":"Audit Logs","href":"/security/audit-logs"},{"title":"IP Allowlisting","href":"/security/ip-allowlisting"}]}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/api-reference/overview"}]},{"tab":"SDKs \u0026 Tools","pages":[{"title":"SDKs \u0026 Tools","href":"/sdks/overview"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog/2026-07-01"}]},{"tab":"Support","pages":[{"title":"Support","href":"/support/status"}]}]},"basePath":"","title":"Data Model - Essal Developer Docs","buildId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","deploymentId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","dynamics":[],"chunks":[]}