Documentation

Etornie Docs

A concise tour of the platform. What it does, who it serves, and how its pieces fit together.

Overview

Etornie is an end-to-end platform for intellectual property custody and case management, evolving toward a Real-World-Asset model on Solana.

The product covers the full lifecycle of an IP case: intake, prosecution, registration, renewal, and transfer. Every touchpoint is captured with role-based access, audit-ready exports, and structured notifications.

A web dashboard coordinates lawyers, clients, and platform admins. An AI assistant provides retrieval-augmented answers over your portfolio. Future iterations will anchor key events on Solana for verifiable provenance.

Roles

Three roles drive the permission model. Pick the one that matches how your team works.

Admin

  • Manage users and roles.
  • Configure IP Agent intervals, scan deadlines.
  • Access every case and audit log.
  • Register privileged accounts via the admin endpoint.

Lawyer

  • See cases assigned to them plus guest cases.
  • Create cases for registered or guest clients.
  • Update case status, add notes and documents.
  • Send scheduled or instant notifications.

Client

  • See only their own cases.
  • Read notes and documents shared with them.
  • Chat with the AI assistant on their matters.

Authentication

Two paths into the platform: classic email sign-in and, upcoming, wallet-based sign-in for Solana-native users.

Email + OTP

  1. Request a verification code on the register page. A six digit OTP is emailed through EmailJS.
  2. Confirm the code to complete registration. An access token and refresh token are issued.
  3. Guest cases matching your email or phone are auto-linked to the new account.

Wallet sign-in (upcoming)

Phantom and Solflare will be supported. The flow will mint a nonce, sign it with the wallet, and verify the signature server-side. Wallet-only users receive a short public handle such as etornie_5xK9aBcD they can share for case assignment.

Sessions

Access tokens default to 30 minutes. Refresh tokens extend to seven days and can be rotated at /auth/refresh.

Case Lifecycle

IP cases follow a defined status flow that is reflected across the dashboard, notifications, and audit exports.

  • Open

    Newly created, awaiting assignment or first filing.

  • In Progress

    Active prosecution or administrative work.

  • Under Review

    Awaiting validation, opposition, or client confirmation.

  • Completed

    Registered, closed, or otherwise finalized.

Each case receives an auto-generated reference in the form ETR-YYYY-NNNN. Jurisdiction, filing date, and deadline are tracked for downstream reminders.

Documents

Files live on the server filesystem, scoped to their parent case.

  • Uploads are accepted from admins, the assigned lawyer, and the case client.
  • Downloads honor the same access list. Deletion is restricted to admins or the original uploader.
  • Indexed documents feed the AI assistant through a pgvector-backed similarity search.

AI Assistant (EtornieGPT)

An IP-focused LLM assistant with optional retrieval over your case documents.

Simple chat produces direct answers grounded in a specialized IP-law system prompt. RAG chat augments answers with passages retrieved from indexed documents, respecting your role-based visibility rules.

Documents are chunked and embedded through Together AI. The vectors are stored in PostgreSQL via the pgvector extension.

Notifications

Three parallel rails keep stakeholders informed.

  • WhatsApp Business Cloud API: template and text messages with scheduling and retry.
  • Email (EmailJS): OTP verification and case creation alerts.
  • In-app bell: real-time portal notifications with read state and deep links.

Wallet-only users default to the in-app channel and can optionally link email or phone to enable the other rails.

IP Agent

A background agent that scans deadlines and drafts reminders without manual intervention.

  • Day-based reminders at configurable intervals. Defaults: 30, 7, and 1 days before a deadline.
  • Minute-based reminders for same-day deadlines.
  • Auto-created WhatsApp notifications for the assigned lawyer and client.
  • Duplicate detection and an admin-controlled on/off switch.

API Reference

REST endpoints are grouped by domain. Full OpenAPI at /docs on the backend.

Auth

POST/auth/registerDirect registration (no OTP)
POST/auth/register/requestSend OTP email
POST/auth/register/verifyVerify OTP, create account
POST/auth/loginExchange credentials for JWT
POST/auth/refreshRotate access token
GET/auth/meCurrent user

Cases

POST/casesCreate case
GET/casesList cases (role-filtered)
GET/cases/{id}Case detail
PATCH/cases/{id}Update case
POST/cases/{id}/notesAdd note
GET/cases/{id}/notesList notes

Documents

POST/cases/{id}/documentsUpload document
GET/cases/{id}/documentsList documents
GET/documents/{id}/downloadDownload
DELETE/documents/{id}Delete

AI

POST/ai/chatSimple or RAG chat
POST/ai/searchSimilarity search
POST/ai/index/{document_id}Index document

Notifications

POST/notificationsCreate scheduled message
GET/notificationsList
POST/notifications/sendSend immediately
GET/notifications/templates/listList templates

IP Agent

POST/agents/ip/scan-deadlinesRun scanner
GET/agents/ip/upcoming-deadlinesUpcoming
POST/agents/ip/configureConfigure intervals

Tech Stack

The platform favors mature, well-supported tools on both server and client.

Backend

FastAPI, Python 3.12+

Frontend

Next.js 16, React 19, TypeScript

Styling

Tailwind CSS v4

ORM

SQLAlchemy 2.0 async

Database

PostgreSQL 16, pgvector

Cache / Queue

Redis 7

Migrations

Alembic

Auth

JWT, python-jose, passlib, bcrypt

LLM

Groq Llama 3.3 70B

Embeddings

Together AI multilingual-e5-large

Messaging

WhatsApp Business Cloud, EmailJS

Blockchain

Solana (integration in progress)

Roadmap

A rough timeline of what is done and what is next. Dates are targets, not guarantees.

  • DoneRebrand to Etornie namespace
  • DoneBeige / RWA frontend theme
  • DoneLanding page with hybrid positioning
  • In progressPhantom and Solflare wallet sign-in
  • PlannedWallet-based case assignment and public handles
  • PlannedOn-chain attestations for case milestones
  • PlannedProgrammable licensing and collateral primitives

FAQ

Short answers to common questions.

Does Etornie replace my legal counsel?

No. It is a custody and workflow platform. Your lawyers remain in charge of legal decisions. The system enforces role-based access so counsel can work with full visibility while clients only see their own cases.

Can I use Etornie without a wallet?

Yes. Email and password works today. Wallet sign-in is optional, additive, and coming online soon.

How are documents protected?

Uploads are scoped to their case and gated by role. Only participants can read or download. Admins and the original uploader can delete.

Will my data live on-chain?

Not by default. Sensitive content never leaves the server. Planned on-chain work is limited to verifiable attestations: hashes and references, not raw documents or personal data.