SOAPNoteAPI
HIPAA Compliant · BAA Available

SOAP Note
API

Generate clinical documentation with a single API call. Text or audio in — structured SOAP notes out.

Generate a SOAP note
# Text-to-SOAP: one call, structured note back
curl -X POST https://api.soapnoteapi.com/v1/note
  -H "Authorization: Bearer snapi_sk_••••••••"
  -H "Content-Type: application/json"
  -d {
       "transcript": "Patient is a 42-year-old male presenting with persistent lower back pain...",
       "specialty":  "nurse_practitioner",
       "template":  "standard"
     }

# Response — structured, ready to paste into your EHR
{
  "noteId":      "note_01jfg8h...",
  "subjective": "42-year-old male with 3-week history of lower back pain...",
  "objective":  "Lumbar ROM restricted at 40° flexion. Paraspinal tenderness L3-L5...",
  "assessment": "Mechanical lower back pain, likely muscular. Rule out disc herniation...",
  "plan":       "1. NSAIDs PRN. 2. Physical therapy referral. 3. Follow-up in 4 weeks...",
  "expires_at": "2025-12-01T00:00:00Z"
}
24 specialtieswith sub-templates
$10 free crediton signup
6 audio formatsMP3 to FLAC
SSE streamingreal-time output
HIPAA compliantBAA available

Capabilities

Everything you need to ship

One REST API. No fine-tuning, no model management, no HIPAA headaches.

Text to SOAP

Send any clinical transcript — dictation, visit notes, conversation summaries — and receive a structured SOAP note in under 3 seconds.

Audio to SOAP

Upload MP3, M4A, WAV, OGG, WebM, or FLAC audio directly. The API transcribes with Whisper and generates the SOAP note in one request — no extra steps.

24 Specialties

Primary care, psychiatry, psychotherapy, physical therapy, chiropractic, dentistry, acupuncture, and 17 more. Each specialty produces correctly-structured output with sub-templates.

HIPAA Compliant

BAA available on request — contact hello@soapnoteapi.com. Data encrypted in transit and at rest. Notes auto-expire after a configurable retention period.

Fast and Reliable

Send a transcript, get a SOAP note in 3-8 seconds. Upload a recording, get a SOAP note within 60 seconds. Results delivered via response, polling, or webhook.

Secure by Default

API key authentication with SHA-256 hashing. Keys shown once at creation, never stored in plaintext. No PHI in application logs.

Real-time Streaming

Stream SOAP note sections as they generate with Server-Sent Events (SSE). Display results to providers instantly instead of waiting for the full response.

Interactive Playground

Test every endpoint from your browser at app.soapnoteapi.com. Try text-to-SOAP, audio upload, and streaming before writing a single line of code.

Visit Summaries

Synthesize multiple past visit notes into a concise longitudinal summary. Ideal for referral letters, follow-up prep, and rapid patient context.

Billing Codes

Request ICD-10 and CPT billing code suggestions alongside any SOAP note. Codes are generated from the clinical content — ready for review before submission.

Patient Summaries

Generate a plain-language summary alongside the clinical note — written for the patient, not the chart. Useful for patient portals, after-visit handouts, and care coordination.

Specialties

24 medical specialties

Pass specialty in your request. We handle the rest.

Nurse PractitionerPhysicianPsychiatristPsychotherapistPhysical TherapyOccupational TherapyChiropractorDentistAcupunctureSocial WorkerRegistered NurseSpeech Language PathologyVeterinaryMassage TherapyPharmacyPodiatristDietitian / NutritionistAthletic TrainerAromatherapyExercise TherapyEmergency Medical ServicesParamedicGenetic CounselingGeneric

Quick start

Up and running in minutes

No SDK required. Any HTTP client works.

01

Get your API key

Sign up and generate a key from the dashboard in 60 seconds. Every new account gets a $10 signup credit — no credit card required.

snapi_sk_test_••••••••••••••••
02

Make your first call

POST a transcript and specialty. The response is a structured SOAP note — JSON, ready to use.

POST /v1/note
03

Ship to production

Swap the test key for a live key. Same endpoint, same response shape. Done.

Authorization: Bearer snapi_sk_live_...