Dokumentation

Freezetale ist ein blitzschneller Speech-to-Text‑API‑Dienst, der in Norwegen gehostet wird und dessen Infrastruktur vom zu 100 % erneuerbaren Wasser- und Geothermiestromnetz Islands betrieben wird.

Mit automatischer Sprecherdiarisierung (Sprecherkennzeichnung), die standardmäßig für alle Sprachen unterstützt wird, ist Freezetale die perfekte Lösung für alle Ihre Sprach-zu-Text-Anforderungen.

Verbindung und Autorisierung

Um die Freezetale-APIs zu nutzen, erstellen Sie zuerst ein Projekt und ein API-Token. Dann finden Sie die ID Ihres Projekts über der Transkriptionsliste.

Hinweis: Sowohl die Projekt-ID als auch das API-Token sind groß-/kleinschreibungssensitiv. Anfragen an die API müssen über HTTPS gestellt werden. Aufrufe über reines HTTP schlagen fehl. API-Anfragen ohne Authentifizierung schlagen ebenfalls fehl.

Praktischerweise können Sie hier Ihre Projekt-ID und Ihr Token eingeben, und wir verwenden diese in den folgenden Beispielen 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 können.

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 bei Abfragen der API nach Aktualisierungen 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 einen der folgenden Werte annehmen: pending, errored, timeout, cancelled, completed.

Beispielantwort
{
	"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 Abonnements. Andernfalls gelten diese allgemeinen Grenzen:

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

100 % erneuerbar?

Während sich das Rechenzentrum von Freezetale in Norwegen befindet, sind unsere Transkriptions‑Runtime‑GPUs in Island stationiert und werden vom zu 100 % erneuerbaren Wasser‑ und Geothermiestromnetz Islands betrieben. Dadurch können wir Transkriptionen mit nahezu null CO2‑Fußabdruck liefern und gleichzeitig vollständig der Europäischen Datenschutz‑Grundverordnung (DSGVO) entsprechen.

Ein Produkt von Nattskiftet
Hergestellt in Norwegen
KontaktDatenschutzerklärungNutzungsbedingungen