Crystallize
The Crystallize endpoint is NeuralSnap's core intelligence — feed it raw, unstructured text (meeting transcripts, articles, journal entries, conversations) and it returns structured Neural Snapshots extracted from the content. One API call can produce multiple snapshots from a single input.
3-Phase Pipeline
Crystallization runs through three sequential AI phases:
Extract
Decomposes the raw text into individual claims, observations, and insights.
Synthesize
Merges overlapping or related claims, removes noise, and identifies key themes.
Crystallize
Transforms refined insights into full 16-field Neural Snapshots with structured metadata.
Crystallize Text
/api/v1/crystallizeTransform raw text into structured Neural Snapshots.
Body Parameters
textstringrequiredThe raw text to crystallize. Must be between 50 and 100,000 characters.
source_typestringdefault: apiHow the text was captured (e.g. manual, fathom, fireflies, conversation).
brain_iduuidOptional brain ID. If omitted, snapshots are added to your default brain.
reviewbooleandefault: falseWhen true, snapshots are saved as pending captures for manual review instead of being committed immediately.
agent_idstringOptional agent identifier for tracking which integration created the snapshots.
session_idstringOptional session identifier for grouping related crystallizations.
curl -X POST https://neuralsnap.ai/api/v1/crystallize \-H "Authorization: Bearer ns_test_abc123" \-H "Content-Type: application/json" \-d '{"text": "Meeting notes from product review — Jan 15, 2025.\n\nKey discussion: We agreed that shipping fast and iterating beats waiting for perfection. Sarah pointed out that our best features (live search, graph view) were both MVPs that we refined based on real user feedback. Nobody predicted graph view would become the #1 feature.\n\nAction item: Move to 2-week release cycles instead of monthly. Track user activation metrics from day one of each release.\n\nInsight from Tom: The biggest risk is not shipping something bad — it is shipping nothing at all. Every week of delay is a week we are not learning from real users.\n\nDecision: We will adopt a bias-to-action framework for product decisions. When in doubt, ship the smallest version and measure.","source_type": "conversation"}'
{"data": {"snapshots": [{"id": "snap_cr1a2b3c4d5e","brain_id": "brain_abc123","name": "Ship Fast, Iterate Faster","core": "Shipping an MVP and iterating on real feedback produces better results than waiting for perfection","type": "Conviction","one_liner": "Real users teach you more than any amount of planning","story": "Best features (live search, graph view) started as quick MVPs refined via user feedback","moment": "Product review meeting, Jan 15 2025","emotion": { "primary": "excitement", "intensity": 0.7 },"source": "Team discussion — Sarah's observation","trigger_pattern": "When deciding between shipping now or waiting for polish","method": "Ship smallest viable version, measure activation, iterate in 2-week cycles","steps": "1. Define MVP scope 2. Ship within 2 weeks 3. Measure activation day one","filter": "Does not apply to safety-critical or regulated features","challenge": "Some features need polish to get meaningful feedback","break_test": "If an MVP launch causes measurable user churn","risks": "Shipping too raw may confuse early adopters","proof": "Live search and graph view both started as MVPs","confidence": 0.88,"significance_score": 0.82,"tags": ["product", "shipping", "iteration", "mvp"],"source_type": "conversation","source_id": null,"created_at": "2025-01-15T14:30:00.000Z","updated_at": "2025-01-15T14:30:00.000Z"},{"id": "snap_cr6f7g8h9i0j","brain_id": "brain_abc123","name": "Inaction Is the Real Risk","core": "The cost of not shipping outweighs the cost of shipping something imperfect","type": "Principle","one_liner": "Every week of delay is a week you're not learning","story": "Tom's insight during product review on the hidden cost of perfectionism","moment": null,"emotion": null,"source": "Tom — product review meeting","trigger_pattern": null,"method": null,"steps": null,"filter": null,"challenge": "Shipping broken software can damage trust and brand","break_test": null,"risks": null,"proof": null,"confidence": 0.85,"significance_score": 0.78,"tags": ["risk", "bias-to-action", "product"],"source_type": "conversation","source_id": null,"created_at": "2025-01-15T14:30:00.000Z","updated_at": "2025-01-15T14:30:00.000Z"}],"count": 2},"usage": {"totalTokensIn": 1847,"totalTokensOut": 923,"model": "gemini-2.0-flash","phases": {"extract": { "tokensIn": 620, "tokensOut": 310 },"synthesize": { "tokensIn": 580, "tokensOut": 290 },"crystallize": { "tokensIn": 647, "tokensOut": 323 }},"embeddingTokens": 145,"totalTokens": 2915},"meta": {"rawInsightCount": 7,"refinedCount": 4,"finalCount": 2,"durationMs": 4230}}
Token Usage
usage field in the response to track consumption, and monitor your remaining quota via the Profile & Usage endpoint.Try It
Try it — Crystallize raw text