Dokumentation

Freezetale ist ein blitzschneller Speech-to-Text-API-Dienst, der in Norwegen gehostet wird und Islands 100 % erneuerbares Wasser- und Geothermie-Energienetz nutzt.

Mit automatischer Sprecherdiarisierung (Sprecherkennzeichnungen), die von Haus aus für alle Sprachen unterstützt wird, ist Freezetale die perfekte Lösung für alle Ihre Sprach‑zu‑Text-Bedürfnisse.

Verbindung und Autorisierung

Um die Freezetale-APIs zu nutzen, erstellen Sie zunächst ein Projekt und ein API-Token. Dann finden Sie die ID Ihres Projekts oberhalb der Transkriptionsliste.

Hinweis: Sowohl die Projekt-ID als auch das API-Token unterscheiden zwischen Groß- und Kleinschreibung. Anfragen an die API müssen über HTTPS erfolgen. Auf einfachem HTTP gesendete Aufrufe werden fehlschlagen. API-Anfragen ohne Authentifizierung werden ebenfalls fehlschlagen.

Praktischerweise können Sie hier Ihre Projekt-ID und Ihr Token eintragen, und wir verwenden diese in den Beispielen unten anstelle von Platzhaltern.

Basis-URL
https://freezetale.com/api
Authentifizierte Anfrage
curl -X GET \
-H "Authorization: Bearer API_TOKEN" \
"https://freezetale.com/api/v1/app/transcriptions?project-id=PROJECT_ID"

Transkription erstellen

Starten Sie einen neuen Transkriptionsauftrag. Identische Anfragen werden automatisch dedupliziert.

Siehe unterstützte Sprachen für Codes, die in language verwendet werden.

POST /v1/app/transcriptions
curl -X POST \
-H "Authorization: Bearer API_TOKEN" \
--json '{"audioUrl": "https://example.com/audio.mp3", "language": "en"}' \
"https://freezetale.com/api/v1/app/transcriptions?project-id=PROJECT_ID"
Beispielantwort
{
	"success": true,
	"transcription": {
		"id": "o3V8FEvUHG21BcuQBCwSZXqO7BV3",
		"status": "pending",
		"audio": {
			"url": "https://example.com/audio.mp3",
			"language": "en"
		},
		"creationDate": "2025-06-07T12:00:00.000Z",
		"modificationDate": "2025-06-07T12:00:00.000Z"
	}
}

Transkription abrufen

Rufe einen Transkriptionsauftrag anhand seiner ID ab.

Wenn der Transkriptionsauftrag abgeschlossen ist, ändert sich sein status zu completed. Außerdem wird resultUrl auf eine URL gesetzt, die das Ergebnis der Transkription und andere Metadaten enthält, die dann heruntergeladen werden können.

Die Antwort enthält einen Last-Modified Header, den Sie beim Abfragen der API auf Updates mit If-Modified-Since verwenden können.

GET /v1/app/transcriptions
curl -X GET \
-H "Authorization: Bearer API_TOKEN" \
"https://freezetale.com/api/v1/app/transcriptions?id=TRANSCRIPTION_ID&project-id=PROJECT_ID"
Beispielantwort
{
	"success": true,
	"transcription": {
		"id": "pkbvMEdhVavGa80K4zBU53N3XiCR",
		"status": "completed",
		"audio": {
			"url": "https://example.com/audio.mp3",
			"language": "en",
			"length": 1034947.4375
		},
		"resultUrl": "https://example.com/36c16505-0fb5-4b8c-8e22-0240d95e1eb5-pkbvMEdhVavGa80K4zBU53N3XiCR.json",
		"creationDate": "2025-06-07T12:00:00.000Z",
		"modificationDate": "2025-06-07T12:00:00.000Z",
		"completionDate": "2025-06-07T12:00:00.000Z"
	}
}

status kann einer der folgenden Werte sein: pending, errored, timeout, cancelled, completed.

Beispiel einer Ergebnisantwort
{
	"id": "b25129c7-6354-4676-923f-c997ba8fb3db",
	"reference": "pkbvMEdhVavGa80K4zBU53N3XiCR",
	"words": [
		{
			"start": 1448,
			"end": 2108,
			"word": "Hello!",
			"speaker": 1
		}
	],
	"metadata": {
		"speakers": 1,
		"confidence": 0.988733,
		"language": {
			"input": "en",
			"detected": "en"
		},
		"audio": {
			"type": "audio/mpeg",
			"size": 788013,
			"length": 1034947.4375
		}
	}
}

Hinweis: Alle Zeitangaben sind in Millisekunden.

Alle Transkriptionen abrufen

Rufen Sie eine Liste aller Transkriptionsaufträge in einem Projekt ab.

GET /v1/app/transcriptions
curl -X GET \
-H "Authorization: Bearer API_TOKEN" \
"https://freezetale.com/api/v1/app/transcriptions?project-id=PROJECT_ID"
Beispielantwort
{
	"success": true,
	"transcriptions": [
		{
			"id": "o3V8FEvUHG21BcuQBCwSZXqO7BV3",
			"status": "pending",
			"audio": {
				"url": "https://example.com/audio.mp3",
				"language": "en"
			},
			"creationDate": "2025-06-07T12:00:00.000Z",
			"modificationDate": "2025-06-07T12:00:00.000Z",
			"estimatedCompletionDate": "2025-06-07T12:00:00.000Z"
		},
		{
			"id": "pkbvMEdhVavGa80K4zBU53N3XiCR",
			"status": "completed",
			"audio": {
				"url": "https://example.com/audio.mp3",
				"language": "en",
				"length": 1034947.4375
			},
			"resultUrl": "https://example.com/36c16505-0fb5-4b8c-8e22-0240d95e1eb5-pkbvMEdhVavGa80K4zBU53N3XiCR.json",
			"creationDate": "2025-06-07T12:00:00.000Z",
			"modificationDate": "2025-06-07T12:00:00.000Z",
			"completionDate": "2025-06-07T12:00:00.000Z"
		}
	]
}

Unterstützte Sprachen

Freezetale unterstützt die folgenden Sprachen. Wenn Sie möchten, dass eine Sprache hinzugefügt wird, kontaktieren Sie uns bitte.

SpracheCodeUnterstützt Sprecher‑Diarisierung
EnglishenJa
DanishdaJa
GermandeJa
SpanishesJa
FinnishfiJa
FrenchfrJa
IcelandicisJa
DutchnlJa
Norwegian (Nynorsk)nnJa
Norwegian (Bokmål)noJa
SwedishsvJa

Grenzen

Ihre API-Anfragen sind abhängig von den Details Ihres Abonnementplans begrenzt. Andernfalls gelten folgende allgemeine Beschränkungen:

  • Maximale Dateigröße: 1024 MB
  • Maximale Audiodauer: 180 Minuten

100 % erneuerbar?

Während sich das Rechenzentrum von Freezetale in Norwegen befindet, stehen unsere für die Transkription eingesetzten GPUs in Island und werden mit 100 % erneuerbarer Energie aus Wasserkraft und Geothermie betrieben. Dadurch können wir Transkriptionen mit nahezu null CO₂‑Fußabdruck liefern und gleichzeitig vollständig der EU‑Datenschutz‑Grundverordnung (DSGVO) entsprechen.

Ein Produkt von Nattskiftet
Hergestellt in Norwegen
KontaktDatenschutzerklärungNutzungsbedingungen