Tilbake
8 min lesing
Avanserte funksjoner

API-integrasjon

Fullstendig VoxScriber API-dokumentasjon for utviklere. Endepunkter, autentisering og kodeeksempler.

API-integrasjon

Fullstendig VoxScriber REST API-dokumentasjon for utviklere. Lær om autentisering, hovedendepunkter, webhooks og hvordan du integrerer automatisk transkripsjon i systemene dine.

API-funksjoner

Token-autentisering

Sikkert autentiseringssystem via API-tokens.

  • Unike tokens per applikasjon
  • Automatisk fornyelse tilgjengelig
  • Granulær tilgangskontroll
  • Tilpasset hastighetsbegrensning

Programmatisk opplasting

Automatisert filinnsending for transkripsjon.

  • Flere støttede formater
  • Direkte opplasting eller via URL
  • Asynkron behandling
  • Sanntids status-tilbakemeldinger

Smarte Webhooks

Automatiske varsler om fremdrift.

  • Konfigurerbare hendelser
  • Automatisk forsøk ved feil
  • Sikkerhetssignatur
  • Flere endepunkter per hendelse

Autentisering

Hente din API-nøkkel

Tilgang til dashbordet

Logg inn på VoxScriber

API-innstillinger

Gå til Innstillinger -> API -> Nøkler

Generer en ny nøkkel

Klikk "Ny API-nøkkel" og angi tillatelser

Kopier og lagre

Kopier den genererte nøkkelen og lagre den sikkert

Del aldri API-nøkkelen din offentlig. Lagre den i miljøvariabler og aldri i versjonskontrollert kildekode.

Bruke API-nøkkelen

Inkluder API-nøkkelen din i Authorization-headeren for alle forespørsler:

curl -X POST https://api.vozparatexto.com.br/v1/transcribe \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: multipart/form-data" \
  -F "file=@audio.mp3"

Hovedendepunkter

Filopplasting

POST /v1/upload
Content-Type: multipart/form-data

Parametere:

  • file (obligatorisk) - Lyd-/videofil
  • language (valgfritt) - Språkkode (f.eks., "en-US")
  • engine (valgfritt) - Transkripsjonsmotor ("ASSEMBLYAI", "WHISPER", "ELEVENLABS")
  • speaker_detection (valgfritt) - Aktiver taleridentifikasjon (boolsk)

Respons:

{
  "id": "upload_abc123",
  "status": "UPLOADED",
  "duration": 120.5,
  "fileSize": 2048000
}

Start transkripsjon

POST /v1/transcribe
Content-Type: application/json

Body:

{
  "uploadId": "upload_abc123",
  "engine": "ASSEMBLYAI",
  "speakerDetection": true,
  "language": "en-US"
}

Sjekk status

GET /v1/transcription/{id}/status

Respons:

{
  "id": "trans_xyz789",
  "status": "COMPLETED",
  "progress": 100,
  "text": "Transcribed text...",
  "duration": 120.5,
  "creditsUsed": 8
}

Last ned resultat

GET /v1/transcription/{id}/export?format=json

Tilgjengelige formater: json, txt, srt, vtt, docx, pdf

Hastighetsbegrensning

| Endepunkt | Grense | Vindu | |---|---|---| | Opplasting | 10 forespørsler | 60 sekunder | | Transkripsjon | 10 forespørsler | 60 sekunder | | Spørring | 60 forespørsler | 60 sekunder | | Eksport | 30 forespørsler | 60 sekunder |

Bruk webhooks i stedet for polling for å spore transkripsjonsstatus. Dette reduserer antallet forespørsler drastisk og forbedrer integrasjonseffektiviteten.

Integrasjonseksempler

Node.js

const FormData = require('form-data');
const fs = require('fs');
const axios = require('axios');

const API_KEY = process.env.VOXSCRIBER_API_KEY;
const BASE_URL = 'https://api.vozparatexto.com.br/v1';

async function transcribeFile(filePath) {
  // 1. Upload
  const form = new FormData();
  form.append('file', fs.createReadStream(filePath));

  const upload = await axios.post(`${BASE_URL}/upload`, form, {
    headers: {
      'Authorization': `Bearer ${API_KEY}`,
      ...form.getHeaders()
    }
  });

  // 2. Transcribe
  const transcription = await axios.post(`${BASE_URL}/transcribe`, {
    uploadId: upload.data.id,
    engine: 'ASSEMBLYAI',
    speakerDetection: true
  }, {
    headers: { 'Authorization': `Bearer ${API_KEY}` }
  });

  return transcription.data;
}

Python

import requests
import os

API_KEY = os.environ['VOXSCRIBER_API_KEY']
BASE_URL = 'https://api.vozparatexto.com.br/v1'

def transcribe_file(file_path):
    headers = {'Authorization': f'Bearer {API_KEY}'}

    # 1. Upload
    with open(file_path, 'rb') as f:
        upload = requests.post(
            f'{BASE_URL}/upload',
            headers=headers,
            files={'file': f}
        )

    # 2. Transcribe
    transcription = requests.post(
        f'{BASE_URL}/transcribe',
        headers=headers,
        json={
            'uploadId': upload.json()['id'],
            'engine': 'ASSEMBLYAI',
            'speakerDetection': True
        }
    )

    return transcription.json()

Feilhåndtering

| Kode | Betydning | Anbefalt handling | |---|---|---| | 400 | Ugyldig forespørsel | Sjekk parametere | | 401 | Ikke autentisert | Sjekk API-nøkkelen din | | 403 | Forbudt | Sjekk token-tillatelser | | 429 | Hastighetsgrense overskredet | Vent og prøv igjen | | 500 | Intern feil | Prøv igjen etter 30 sekunder |

Sikkerhet

  • Bruk HTTPS for alle forespørsler
  • Lagre API-nøkler i miljøvariabler
  • Roter nøkler regelmessig
  • Bruk minimum nødvendige tillatelser
  • Implementer signaturverifisering for webhooks

Fortsett å lære