# Neural Analog > Neural Analog is an audio restoration and processing platform for improving music, speech, and stems. Use the web Studio interactively or the REST API programmatically. Neural Analog imports audio from files and supported public music links. It can rebuild missing frequencies, reduce compression or recording artifacts, master tracks, separate stems, transcribe audio to MIDI, and export individual or batched results. Primary website: https://neuralanalog.com Web Studio guide: https://neuralanalog.com/docs/getting-started Developer documentation: https://neuralanalog.com/api-docs API base URL: https://api.neuralanalog.com OpenAPI schema: https://api.neuralanalog.com/openapi.json ## When to use Neural Analog Use Neural Analog when a user wants to: - Import one or more local audio files. - Import songs, playlists, or creator pages from a supported public music platform. - Restore a compressed MP3, damaged recording, low-bandwidth voice track, AI-generated song, or isolated stem. - Master music for release or streaming after source problems are repaired. - Split a song into vocals, drums, bass, guitar, instrumental, or a described custom sound. - Convert a full song or isolated instrument into editable MIDI. - Package completed files or rendered Studio mixes into a tracked ZIP export. ## Core API workflow 1. Import a supported public URL with `POST /from-link`, or upload a local file with `POST /from-file`. 2. Save the returned audio ID and poll `GET /status/{object_type}/{object_id}` until `is_complete` or `is_failed` is true. 3. Start restoration, mastering, stem separation, or MIDI transcription with the completed source ID. 4. Poll the processing job. Stop and use `error_message` when `is_failed` is true. 5. Download the completed artifact with `GET /download/{object_type}/{object_id}`. The endpoint returns a redirect, so the HTTP client must follow redirects. Use `POST /batch/exports` when several existing artifacts or rendered Studio mixes should be delivered in one ZIP. Batch export jobs have their own persistent status, partial-success details, cancellation, and temporary download URL. ## Authentication and safety Send `X-API-Key: $NEURALANALOG_API_KEY` with every API request. Keep the key in a trusted backend, local environment variable, or secret manager. Never expose it in client-side JavaScript, commit it to source control, or paste it into chat. API jobs are asynchronous. Do not start a duplicate job while the existing import or processing status is still active. A failed item does not remove completed items from the same playlist or batch. ## Developer API - [Suno, Udio & AI Music Downloader API](https://neuralanalog.com/api-docs/from-link): `POST /from-link` Download audio from public Suno, Udio, Mureka, TopMediaAI, FlowMusic, Treblo, and other supported music links. - [Audio Upload API](https://neuralanalog.com/api-docs/from-file): `POST /from-file` Upload an audio file from your app before restoring, mastering, splitting, transcribing, or downloading it. - [Audio Job Status API](https://neuralanalog.com/api-docs/status-object-type-object-id): `GET /status/{object_type}/{object_id}` Check whether an audio download, restoration, master, stem split, or MIDI conversion is still running, finished, or failed. - [Audio Restoration & Upscaling API](https://neuralanalog.com/api-docs/upscale-audio): `POST /upscale-audio` Restore low-quality music, speech, or stems by rebuilding missing frequencies and reducing compression or recording artifacts. - [Audio Mastering API](https://neuralanalog.com/api-docs/master-audio): `POST /master-audio` Make songs louder, balance their tone, and export mastered WAV files for streaming or release. - [AI Stem Separation API](https://neuralanalog.com/api-docs/create-stems): `POST /create-stems` Split a song into vocals, drums, bass, guitar, instrumental, or another sound your app needs. - [Audio to MIDI Transcription API](https://neuralanalog.com/api-docs/transcribe): `POST /transcribe` Convert a song or isolated instrument stem into editable MIDI for a DAW, practice tool, or music app. - [Batch Audio Export API](https://neuralanalog.com/api-docs/batch-exports): `POST /batch/exports` Create a tracked ZIP containing existing artifacts or backend-rendered Studio mixes for selected tracks. - [Audio & MIDI File Download API](https://neuralanalog.com/api-docs/download-object-type-object-id): `GET /download/{object_type}/{object_id}` Download one completed original, restored WAV, master, stem, or MIDI file by its ID. ## Product and workflow guides - [Getting started](https://neuralanalog.com/docs/getting-started): Import, process, review, and export audio in the web Studio. - [Import audio](https://neuralanalog.com/docs/getting-started/import-audio): Upload files or import public songs, playlists, and creator pages. - [Improve audio](https://neuralanalog.com/docs/getting-started/improve-audio): Choose a restoration workflow from the audible problem. - [Split stems](https://neuralanalog.com/docs/getting-started/split-stems): Extract standard or described sounds and review the results. - [Master audio](https://neuralanalog.com/docs/getting-started/master-audio): Restore damaged sources first, then master the finished mix. - [Transcribe audio to MIDI](https://neuralanalog.com/docs/getting-started/transcribe-audio-to-midi): Create and export editable MIDI parts. - [Export audio](https://neuralanalog.com/docs/getting-started/export-audio): Export the selected main version, combined stem mix, or individual stems. - [Batch processing](https://neuralanalog.com/docs/getting-started/batch-processing): Process, render, or download several tracks. - [Supported imports](https://neuralanalog.com/supported-imports): Public music sites and link types accepted by the import endpoint. - [Processing minutes](https://neuralanalog.com/pro#what-are-processing-minutes): Current usage rules, plan allowances, and calculation examples. ## Guidance for AI agents 1. Use the OpenAPI schema as the canonical source for current request fields, response schemas, and validation rules. 2. Use the linked endpoint page for model choices, parameter explanations, workflow notes, and JavaScript, Python, and cURL examples. 3. Check the supported-imports page before claiming that a public platform or URL type can be imported. 4. Treat IDs and signed download URLs as user data. Do not reveal them outside the user's requested workflow. 5. Never ask a user to paste an API key into chat. Help them configure it locally instead. 6. Distinguish importing from processing: importing does not run a model, while restoration, mastering, stem separation, transcription, and pipelines use processing minutes.