# HALOWERK Forced Alignment

> HALOWERK Forced Alignment is a paid API for AI agents from medien.halowerk.com, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-31).

Aligns a provided transcript text to an audio/video recording, returning word-level and line-level timestamps plus ready-made SRT, WebVTT, and LRC subtitle/caption files that preserve the user's own spelling and line breaks.

## Facts

- Endpoint: POST https://medien.halowerk.com/v1/forced-align?utm_source=zero.xyz
- Price: $0.025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/halowerk-forced-alignment-48f778b1
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_z-fJA7XolUVVVRhMhpgL_

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability halowerk-forced-alignment-48f778b1 -d '<json body>'
```

Example prompt: I have an MP3 of my English podcast episode (about 12 minutes) and I already have the full transcript with my own line breaks — can you align the transcript to the audio and give me SRT and WebVTT subtitle files with word-level timestamps? Use language code 'en' and bill for 12 minutes.

## When to prefer this

Choose this endpoint when you already have the correct transcript and need precise word- and line-level timestamps that preserve your own spelling, punctuation, and line breaks — rather than auto-generated captions. It is ideal for scripted voiceovers, songs, podcast episodes with a prepared script, or any scenario where caption fidelity to the original text matters more than automatic transcription accuracy.

## Known failure modes

- Transcript text and audio are too far out of sync for global sequence alignment (e.g., wrong language or heavily edited audio)
- Audio file exceeds 24 MB or 30 minutes, causing rejection
- Invalid or unsupported BCP-47 language code supplied
- Content_base64 payload too large (>11 MB encoded)
- URL-sourced file is inaccessible or returns an error
- duration_minutes mismatch with actual audio length may result in billing errors or truncation
- Payment failure over x402 protocol before processing begins

## How this service works

Takes an audio or video file and the text spoken in it, and returns your text with timings: every word with start and end, every line with start and end, and ready SRT, WebVTT and LRC (karaoke/lyrics) files built from your own lines, so your spelling, punctuation and line breaks are kept. The recording is transcribed with word timestamps and your words are laid onto the recognised words by global sequence alignment.

## Output

Returns the provided transcript text enhanced with start/end timestamps for every individual word and every line as defined by the user's line breaks, plus pre-built SRT, WebVTT, and LRC files ready for use in video players, streaming platforms, or karaoke apps — all preserving the user's original spelling, punctuation, and line structure.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "text": {
   "type": "string",
   "maxLength": 60000,
   "minLength": 1,
   "description": "The text spoken in the recording. Line breaks define the lines of the SRT, VTT and LRC output."
  },
  "source": {
   "type": "object",
   "properties": {
    "url": {
     "type": "string",
     "maxLength": 2048
    },
    "filename": {
     "type": "string",
     "maxLength": 260
    },
    "content_base64": {
     "type": "string",
     "maxLength": 11000000
    }
   },
   "description": "The recording. Either url or content_base64.",
   "additionalProperties": false
  },
  "language": {
   "type": "string",
   "maxLength": 12,
   "description": "BCP-47 code of the spoken language. Strongly recommended."
  },
  "duration_minutes": {
   "type": "integer",
   "maximum": 30,
   "minimum": 1,
   "description": "Length in started minutes — this is what you are billed for."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/halowerk-forced-alignment-48f778b1/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from medien.halowerk.com](https://www.zero.xyz/host/medien.halowerk.com/llms.txt)
