Enclave Types Guide
Overview
Satori supports different enclave types that customize how documents are processed and how the AI responds to queries. Choosing the right enclave type ensures optimal document classification and more relevant AI responses.
Available Types
Clinical Study (clinical_study)
Optimized for clinical trial documentation and medical research.
Document Classification: Uses 51 specialized document types, including:
- Study Protocol
- Investigator's Brochure
- Informed Consent Form (ICF)
- Case Report Form (CRF)
- Clinical Study Report
- Regulatory Submissions
- Adverse Event Reports
- Site Management Documents
- And more...
AI Behavior: The AI agent is configured as a clinical trial research assistant with:
- Formal, regulatory-appropriate communication style
- Focus on single study context
- Specialized query handling for clinical topics
- Understanding of regulatory requirements
Best For:
- Clinical trial documentation
- Medical regulatory submissions
- Drug development documentation
- Medical research papers
- Healthcare compliance documents
Generic (generic)
General-purpose document processing for business and technical documents.
Document Classification: Uses 15 general document types, including:
- Policy Documents
- Contract Agreements
- Financial Reports
- Technical Documentation
- Meeting Minutes
- Presentations
- Emails and Correspondence
- And more...
AI Behavior: General knowledge agent with:
- Flexible communication style
- Multi-document context support
- Broad topic understanding
Best For:
- Legal contracts and agreements
- Business reports and presentations
- Technical documentation
- Project documentation
- General corporate documents
Choosing the Right Type
| Scenario | Recommended Type |
|---|---|
| Clinical trial documentation | clinical_study |
| Medical regulatory submissions | clinical_study |
| Drug development documents | clinical_study |
| Healthcare compliance | clinical_study |
| Legal contracts | generic |
| Business reports | generic |
| Technical documentation | generic |
| Project management docs | generic |
| Mixed business documents | generic |
Setting Enclave Type
At Creation
Specify the enclave_type when creating an enclave:
curl -X POST ".../api/tenants/{tenant_id}/enclaves/" \
-H "Authorization: Bearer <TOKEN>" \
-H "Content-Type: application/json" \
-d '{
"name": "Clinical Trial Alpha",
"description": "Phase 2 clinical trial documentation",
"enclave_type": "clinical_study",
"tenant_id": "{tenant_id}"
}'
For generic documents:
curl -X POST ".../api/tenants/{tenant_id}/enclaves/" \
-H "Authorization: Bearer <TOKEN>" \
-H "Content-Type: application/json" \
-d '{
"name": "Legal Contracts",
"description": "Contract management workspace",
"enclave_type": "generic",
"tenant_id": "{tenant_id}"
}'
Default Behavior
If enclave_type is not specified, the enclave defaults to clinical_study.
Updating Existing Enclaves
You can update the enclave type:
curl -X PUT ".../api/tenants/{tenant_id}/enclaves/{enclave_id}" \
-H "Authorization: Bearer <TOKEN>" \
-H "Content-Type: application/json" \
-d '{
"enclave_type": "generic"
}'
Important: Changing the enclave type after documents have been uploaded will NOT reprocess existing documents. Only new uploads will use the new classification catalog. For best results, choose the correct type when creating the enclave.
Best Practices
DO:
- Choose the type at creation - Select the appropriate type when creating the enclave to ensure all documents are classified correctly
- Keep document types consistent - Use separate enclaves for different document domains
- Consider your use case - Think about what types of documents you'll be uploading and how you want the AI to respond
DON'T:
- Mix clinical and non-clinical documents - Keep clinical trial documents separate from general business documents
- Change type after uploading - Avoid changing the enclave type after documents have been processed
- Use
genericfor regulatory documents - Clinical and regulatory documents benefit from the specializedclinical_studyclassification
API Reference
Valid Values
| Value | Description |
|---|---|
clinical_study |
Clinical trial and medical research documents |
generic |
General business and technical documents |
Validation
The API validates enclave type values. Invalid types return a 400 error:
{
"detail": "Invalid enclave_type 'invalid'. Must be one of: ['clinical_study', 'generic']"
}
Examples
Python
import requests
# Create a clinical study enclave
response = requests.post(
f"{BASE_URL}/api/tenants/{tenant_id}/enclaves/",
headers={"Authorization": f"Bearer {token}"},
json={
"name": "Phase 2 Trial",
"description": "Clinical trial documentation",
"enclave_type": "clinical_study",
"tenant_id": tenant_id
}
)
# Create a generic enclave
response = requests.post(
f"{BASE_URL}/api/tenants/{tenant_id}/enclaves/",
headers={"Authorization": f"Bearer {token}"},
json={
"name": "Contract Repository",
"description": "Legal contracts and agreements",
"enclave_type": "generic",
"tenant_id": tenant_id
}
)
TypeScript
// Create a clinical study enclave
const response = await fetch(
`${BASE_URL}/api/tenants/${tenantId}/enclaves/`,
{
method: 'POST',
headers: {
'Authorization': `Bearer ${token}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: 'Phase 2 Trial',
description: 'Clinical trial documentation',
enclave_type: 'clinical_study',
tenant_id: tenantId
})
}
);