Libraryminds REST API v1
Build on the Libraryminds API
Add asynchronous video and audio transcription, timestamped transcript export, semantic search, usage reporting, and signed webhooks to your own product or automation. The API uses predictable JSON responses and the same transcription minutes as your Libraryminds account.
Quick start
- Generate a scoped API key in Account Settings. Keys begin with
lm_live_; keep them on your server and never expose them in browser code. - Send the key on every request as
Authorization: Bearer lm_live_YOUR_API_KEY. - Submit a job with
jobs:write, poll with jobs:read, then retrieve the completed transcript with transcripts:read.
curl -X POST https://libraryminds.com/api/v1/jobs \
-H "Authorization: Bearer lm_live_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: your-unique-key" \
-d '{"url":"https://youtube.com/watch?v=VIDEO_ID"}'
REST API access is available on every plan and consumes account transcription minutes. Scopes do not bypass plan gates: webhooks require Plus or higher, and some AI operations also require an eligible plan.
Authentication, base URL, and limits
- Base URL:
https://libraryminds.com/api/v1; HTTPS only. - Authentication: Bearer API key with endpoint-specific scopes:
account:read, jobs:read, jobs:write, transcripts:read, ai:write, search:read, exports:read, usage:read, webhooks:read, and webhooks:write. - General rate limit: 60 requests per minute per key. Responses include
X-RateLimit-Limit and X-RateLimit-Remaining; AI and chat endpoints have additional documented limits. - Pagination: list endpoints accept a maximum page size of 100; transcript JSON accepts up to 500 segments per page.
- Billing: transcription requests consume account minutes. New accounts include 190 free transcription minutes (one-time, lifetime).
API endpoint reference
| Method | Path | Purpose |
|---|
| GET | /api/v1/me | Read account details and the current credit balance. |
| GET | /api/v1/jobs | List jobs with pagination, search, and status filters. |
| GET | /api/v1/jobs/:id | Read one transcription job and its current status. |
| POST | /api/v1/jobs | Submit a YouTube URL for asynchronous transcription. |
| POST | /api/v1/jobs/upload | Upload an audio or video file for transcription. |
| POST | /api/v1/jobs/import-url | Import a public HTTPS media URL. |
| GET | /api/v1/jobs/:id/transcript | Retrieve JSON, plain text, SRT, or VTT output. |
| POST | /api/v1/jobs/:id/cancel | Cancel a pending or processing job atomically. |
| POST | /api/v1/jobs/:id/retry | Retry a failed job without double billing. |
| POST | /api/v1/search | Run semantic search across completed transcripts. |
| GET | /api/v1/usage | Read job, minute, and credit usage analytics. |
| POST | /api/v1/webhooks | Register an HMAC-signed webhook endpoint. |
Asynchronous job lifecycle
POST job endpoints return 202 Accepted with a job ID. Check GET /jobs/:id until the status is COMPLETED, or subscribe to job.completed and job.failed webhooks. Completed transcripts are available as timestamped JSON, plain text, SRT, or VTT. Safe retries use the Idempotency-Key header.
Errors and webhooks
Errors use stable machine-readable codes with a message and request ID. Common responses include 401 for an invalid key, 402 for insufficient transcription minutes, 403 for a missing scope or plan limit, 404 for a resource that does not exist or is not owned by the caller, 422 for invalid input, and 429 for rate limits. Plus and higher plans can register up to 10 public HTTPS webhook endpoints. Deliveries are signed with HMAC-SHA256, retried up to five times, and dead-lettered after the final attempt.
Download the OpenAPI specification · Create an account · View plans and minutes
Open source on GitHub
Libraryminds is a full video knowledge engine with many features, but every user has a different pain point. That is why Libraryminds open-sources standalone tools on the official Libraryminds GitHub organization — each repository is one focused tool for one specific job, built on the same API. Clone a repo and run it on your local machine or your own cloud: add your Libraryminds API key and it just works, giving you only the feature you need without digging through the full product. Because the code is open source, you can customize, extend, or white-label any tool under your own brand, powered by your API key. Create a free account to get your API key — it includes 190 free transcription minutes (one-time, lifetime).
Frequently Asked Questions
Does Libraryminds have a public REST API for video transcription?
Yes. Libraryminds provides a public REST API (v1) that lets developers submit YouTube URLs for transcription and retrieve timestamped transcripts programmatically. It supports JSON, SRT, VTT, and plain text output formats. API credentials can be created and revoked from account settings.
How do I transcribe a YouTube video using the Libraryminds API?
To transcribe a YouTube video with the Libraryminds API, send a POST request to /api/v1/jobs with the YouTube URL and your Bearer token in the Authorization header. Poll GET /api/v1/jobs/:id for status. Once complete, retrieve the transcript via GET /api/v1/jobs/:id/transcript?format=json for timestamped JSON, or use format=srt, format=vtt, or format=text for other formats.
What authentication method does the Libraryminds API use?
The Libraryminds API uses Bearer token authentication. API keys are generated in your account settings and prefixed with lm_live_. Pass the key as Authorization: Bearer lm_live_... in every request header. The rate limit is 60 requests per minute per API key.
Can I integrate the Libraryminds API with Zapier, Make, or n8n?
Yes, via custom HTTP/webhook steps. Any automation tool that can make HTTP requests — including Zapier's Webhooks step, Make, and n8n — can call the Libraryminds REST API directly. A common workflow is: trigger when a new YouTube video is published → POST the URL to the Libraryminds API → retrieve the transcript JSON and pipe it into your newsletter, CMS, or AI tool. There is no native Zapier app; you use the REST API from these tools.
Should I use a self-hosted or managed transcription API?
It depends on what you want to maintain. Self-hosting can require compute provisioning, long-file handling, retries, monitoring, and scaling. A managed API handles service operation while providing timestamps and export formats behind one integration.
What affects transcription results?
Results vary by audio quality, accents, domain vocabulary, language, background noise, and overlapping speech. Review important wording against the source recording.
Does the API support real-time streaming transcription, or batch only?
The Libraryminds API is batch (asynchronous): you submit a job, poll its status, and retrieve the finished transcript. There is no live streaming endpoint. Batch is the right model for recorded content — YouTube videos, uploads, podcast episodes — where full-file context also lets the engines produce more accurate, better-punctuated transcripts than live streaming can.
Does Libraryminds offer open-source tools I can run myself?
Yes. Libraryminds publishes standalone open-source tools on its official GitHub organization (github.com/Libraryminds). Each repository is one focused tool for one specific job, built on the Libraryminds API. Clone a repo, run it on your local machine or your own cloud, add your Libraryminds API key, and it works — you get only the feature you need without adopting the full product.
Can I white-label a Libraryminds open-source tool under my own brand?
Yes. The tools are open source, so you can customize the code, extend it, and ship it under your own brand. The heavy lifting — transcription, search, exports — is powered by the Libraryminds API through your API key, so your branded tool stays thin while the engine does the work.
Are the Libraryminds open-source tools free?
The code is free and open source — clone it from GitHub and run it anywhere at no cost. The tools call the Libraryminds API with your API key, so usage consumes your account's transcription minutes. A free account includes 190 lifetime transcription minutes with no credit card required, which is enough to try any tool end to end.