TranscribeNode convierte audio, video, imágenes y documentos en texto procesable vía API, CLI y SDKs. Esta es la referencia esencial.
pip install transcribenode
Requiere Python 3.9+. Incluye el CLI tn + el SDK Python (from tn import Client).
npm install @transcribenode/sdk
# o
pnpm add @transcribenode/sdk
Compatible con Node 18+, Next.js (Pages & App Router), Cloudflare Workers, Vercel Edge, Bun y Deno.
curl -sS https://api.transcribenode.com/v1/me/credits \
-H "Authorization: Bearer $TN_API_KEY"
La API acepta cualquier cliente HTTP. Los SDKs son opcionales.
En transcribenode.com/app/settings creá una key con prefijo tn_live_ (o tn_test_ para sandbox). Guardala — no se muestra dos veces.
export TN_API_KEY=tn_live_xxxxxxxxxxxx
El SDK Python toma TN_API_KEY automáticamente; en JS lo pasás al constructor.
from tn import Client
with Client() as tn:
job = tn.transcribe("audio.mp3", diarize=True, language="es")
print(job.status, job.download_url)
import { TranscribeNode } from "@transcribenode/sdk";
import fs from "node:fs";
const tn = new TranscribeNode({ apiKey: process.env.TN_API_KEY! });
const job = await tn.transcribe({
file: fs.readFileSync("audio.mp3"),
filename: "audio.mp3",
diarize: true,
language: "es",
});
console.log(job.status, job.downloadUrl);
| Método | Path | Descripción |
|---|---|---|
| POST | /v1/upload-url | Pedir presigned URL para subir archivo a storage |
| POST | /v1/jobs | Crear job (transcribe / ocr / bg_removal / translate) |
| GET | /v1/jobs/{id} | Estado de un job |
| GET | /v1/jobs | Listado con ?limit y ?status |
| POST | /v1/batch/jobs | Batch atómico hasta 500 archivos |
| GET | /v1/me/credits | Balance de créditos |
| POST | /v1/webhooks | Registrar endpoint de webhooks |
| GET | /v1/status | Snapshot público de componentes |
Audio/video a SRT o texto plano. Diarización por hablante, detección de idioma, modo legal (audiencias AR).
Imagen y PDF a texto. Modo ar con validación CUIT + padrón ARCA para facturas argentinas.
Quita fondo en imágenes (producto, retrato) via pipeline GPU.
Recibí notificaciones con firma HMAC-SHA256 cuando un job termina.
Hasta 500 jobs atómicos — si falta crédito para uno, ninguno se crea.
Interfaz en ES / EN / PT. Auto-detección + switcher con banderas.
Un crédito equivale aproximadamente a:
Consultá tu balance con tn balance o client.balance().
| HTTP | Significado | Typed error (SDKs) |
|---|---|---|
| 401 | API key inválida | TNAuthError |
| 402 | Sin créditos | TNAPIError |
| 429 | Rate limit | TNRateLimitError |
| 5xx | Error interno → reintentar con backoff | TNAPIError |
Email: [email protected] · Status: transcribenode.com/status