Skip to main content

Crate opensession_api

Crate opensession_api 

Source
Expand description

Shared API types, crypto, and SQL builders for opensession.io

This crate is the single source of truth for all API request/response types. TypeScript types are auto-generated via ts-rs and consumed by the frontend.

To regenerate TypeScript types: cargo test -p opensession-api – export_typescript –nocapture

Modules§

deploy
Deployment profile flags shared by server and worker runtimes.
oauth
Generic OAuth2 provider support.

Structs§

Agent
AI agent information
ApiError
API error payload.
AuthRegisterRequest
Email + password registration.
AuthTokenResponse
Returned on successful login / register / refresh.
CapabilitiesResponse
Returned by GET /api/capabilities — runtime feature availability.
ChangePasswordRequest
Change password request.
Content
Multimodal content container
Event
A single event in the flat timeline
HealthResponse
Returned by GET /api/health — server liveness check.
IssueApiKeyResponse
Response for API key issuance. The key is visible only at issuance time.
LoginRequest
Email + password login.
LogoutRequest
Logout request (invalidate refresh token).
OAuthLinkResponse
Response for OAuth link initiation (redirect URL).
OkResponse
Generic success response for operations that don’t return data.
ParseCandidate
Candidate parser ranked by detection confidence.
ParsePreviewErrorResponse
Structured parser preview error response.
ParsePreviewRequest
Request body for POST /api/ingest/preview.
ParsePreviewResponse
Response body for POST /api/ingest/preview.
RefreshRequest
Refresh token request.
Session
Top-level session - the root of a HAIL (Human AI Interaction Log) trace
SessionContext
Session context metadata
SessionDetail
Single session detail returned by GET /api/sessions/:id.
SessionLink
A link between two sessions (e.g., handoff chain).
SessionListQuery
Query parameters for GET /api/sessions — pagination, filtering, sorting.
SessionListResponse
Paginated session listing returned by GET /api/sessions.
SessionSummary
Flat session summary returned by list/detail endpoints. This is NOT the full HAIL Session — it’s a DB-derived summary.
Stats
Aggregate session statistics
StreamEventsRequest
Request body for POST /api/sessions/:id/events — append live events.
StreamEventsResponse
Returned by POST /api/sessions/:id/events — number of events accepted.
UploadRequest
Request body for POST /api/sessions — upload a recorded session.
UploadResponse
Returned on successful session upload — contains the new session ID and URL.
UserSettingsResponse
Full user profile returned by GET /api/auth/me.
VerifyResponse
Returned by POST /api/auth/verify — confirms token validity.

Enums§

ContentBlock
Individual content block
EventType
Event type - the core abstraction
LinkType
Type of link between two sessions.
ParseSource
Source descriptor for parser preview requests.
ServiceError
Framework-agnostic service error.
SortOrder
Sort order for session listings.
TimeRange
Time range filter for queries.

Functions§

saturating_i64
Safely convert u64 to i64, saturating at i64::MAX instead of wrapping.