API Types Reference
This page documents the core types used in the Alquimia API.
Document Types
AlquimiaDocument
Represents a document in the system.
{
id: string;
name: string;
description?: string;
isActive: boolean;
contentType: string;
url: string;
updatedAt?: string;
}
AlquimiaTopic
Represents a topic that can contain multiple documents.
{
id: string;
externalCollectionId: string;
isActive: boolean;
name: string;
description: string;
createdAt?: string;
updatedAt?: string;
files: AlquimiaDocument[];
ratings?: TopicRating[];
}
AlquimiaFile
Represents a file object.
{
id: string;
file: Blob;
}
Rating Types
TopicRating
Basic rating information for a topic.
{
id: number;
sessionId: string;
}
RatingData
Detailed rating information including assistant and session data.
{
assistantId: string;
sessionId: string;
topicId: number;
score?: number;
emoji?: string;
description?: string;
}
Status Enums
EditingStatus
Represents the current editing state.
enum EditingStatus {
EDITING = 'EDITING',
FINISHED = 'FINISHED'
}
Response Types
ActionResponse
Generic response wrapper for actions.
{
success: boolean;
data?: T;
error?: ActionError;
}
ActionError
Error information for action responses.
{
message: string;
code?: string;
details?: ErrorDetails;
}
ErrorDetails
Additional error details.
{
status: string;
statusText?: string;
}
ApiError
Extended Error type with additional API-specific fields.
Error & {
message: string;
name: string;
cause: string;
code?: string | number;
status?: string | number;
}
Server Action Types
TWYDServerActions
Interface defining available server actions.
{
getDocument?: (id: string) => Promise<ActionResponse<Blob>>;
sendRating?: (ratingData: RatingData) => Promise<any>;
logError?: (message: string, error: Error, data?: Record<string, any>) => Promise<any>;
}
Last updated