VideoToSRT API
Backend API for OAuth login, usage credits, Stripe checkout, and queued audio transcription.
Endpoints
| Method | Path | Description |
|---|---|---|
GET |
/api/health |
Service health check. |
GET |
/api/auth/login?provider=google|github|email |
Start login. Email mode returns a development magic link. |
GET |
/api/auth/me |
Return the current user from the vts_session cookie. |
POST |
/api/auth/logout |
Clear the session cookie. |
GET |
/api/usage |
Return this month's used and available transcription minutes. |
POST |
/api/transcribe |
Create a queued transcription job from an audio URL. |
GET |
/api/jobs/:id |
Read a transcription job and SRT result. |
POST |
/api/checkout |
Create a Stripe Checkout session. Body: {"plan":"pro"} or {"plan":"business"}. |
POST |
/api/webhooks/stripe |
Stripe webhook endpoint for checkout.session.completed. |
Transcription Request
{
"filename": "meeting.mp3",
"audio_url": "https://example.com/meeting.mp3",
"duration_seconds": 420
}
Credits
Each user receives 30 free minutes per month. Stripe checkout adds 120 minutes for Pro or 600 minutes for Business.