Documentation Index
Fetch the complete documentation index at: https://docs.attio.com/llms.txt
Use this file to discover all available pages before exploring further.
Overview
The Attio SDK has migrated from individual type imports to a unified App namespace system. This provides better organization, improved autocomplete, and clearer API structure.
What changed
Before: Individual type imports
import type {
RecordAction,
BulkRecordAction,
RecordWidget,
CallRecordingInsightTextSelectionAction,
} from "attio/client"
After: App Namespace
import type {App} from "attio"
// Types are now accessed as:
// App.Record.Action
// App.Record.BulkAction
// App.Record.Widget
// App.CallRecording.Insight.TextAction
Migration steps
Update your imports
Replace individual type imports with the App namespace import:Before:
import type {RecordAction} from "attio/client"
After:
import type {App} from "attio"
Replace your types
Replace individual types with the corresponding type under the App namespace:Before:
export const myAction: RecordAction = {
id: "send-invoice",
label: "Send Invoice",
icon: "Mail",
onTrigger: async ({recordId}) => {
// your logic
},
}
After:
export const myAction: App.Record.Action = {
id: "send-invoice",
label: "Send Invoice",
icon: "Mail",
onTrigger: async ({recordId}) => {
// your logic
},
}
Complete type mapping reference
| Old Type | New Type |
|---|
RecordAction | App.Record.Action |
BulkRecordAction | App.Record.BulkAction |
RecordWidget | App.Record.Widget |
CallRecordingInsightTextSelectionAction | App.CallRecording.Insight.TextAction |
CallRecordingSummaryTextSelectionAction | App.CallRecording.Summary.TextAction |
CallRecordingTranscriptTextSelectionAction | App.CallRecording.Transcript.TextAction |