Dokumentasjon

Freezetale er en lynrask tale-til-tekst API-tjeneste hostet i Norge, drevet av Islands 100 % fornybare vann- og geotermiske energiforsyning.

Med automatisk taleridentifisering (taleretiketter) som støttes ut av boksen for alle språk, er Freezetale den perfekte løsningen for alle dine tale-til-tekst-behov.

Tilkobling og autorisasjon

For å bruke Freezetale API-ene, opprett først et prosjekt og et API-token. Deretter finner du prosjekt-ID-en over transkripsjonslisten.

Merk: Både prosjekt-ID-en og API-tokenet skiller mellom store og små bokstaver. Forespørsler mot API-et må gjøres over HTTPS. Anrop gjort over vanlig HTTP vil feile. API-forespørsler uten autentisering vil også feile.

Praktisk nok kan du fylle inn prosjekt-ID-en og tokenet ditt her, og vi bruker dem i eksemplene nedenfor i stedet for plassholdere.

Base-URL
https://freezetale.com/api
Autentisert forespørsel
curl -X GET \
-H "Authorization: Bearer API_TOKEN" \
"https://freezetale.com/api/v1/app/transcriptions?project-id=PROJECT_ID"

Opprett en transkripsjon

Start en ny transkripsjonsjobb. Fjerner automatisk duplikater av identiske forespørsler.

Se støttede språk for koder du kan bruke i language.

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"
Eksempel på respons
{
	"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"
	}
}

Hent en transkripsjon

Hent en transkripsjonsjobb ved hjelp av ID-en.

Når transkripsjonsjobben er ferdig, endres status til completed. I tillegg settes resultUrl til en URL som inneholder resultatet av transkripsjonen og annen metadata, som deretter kan lastes ned.

Svaret inneholder en Last-Modified header som du kan bruke når du pinger API-et for oppdateringer ved å bruke If-Modified-Since.

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"
Eksempel på respons
{
	"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 kan være en av følgende verdier: pending, errored, timeout, cancelled, completed.

Eksempel på resultatrespons
{
	"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
		}
	}
}

Merk: Alle tidsverdier er i millisekunder.

Hent alle transkripsjoner

Hent en liste over alle transkripsjonsjobber i et prosjekt.

GET /v1/app/transcriptions
curl -X GET \
-H "Authorization: Bearer API_TOKEN" \
"https://freezetale.com/api/v1/app/transcriptions?project-id=PROJECT_ID"
Eksempel på respons
{
	"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"
		}
	]
}

Støttede språk

Freezetale støtter følgende språk. Hvis du ønsker at vi skal legge til et språk, vennligst ta kontakt.

SpråkKodeStøtter talerdiarisering
EnglishenJa
DanishdaJa
GermandeJa
SpanishesJa
FinnishfiJa
FrenchfrJa
IcelandicisJa
DutchnlJa
Norwegian (Nynorsk)nnJa
Norwegian (Bokmål)noJa
SwedishsvJa

Grenser

Dine API-forespørsler er begrenset basert på detaljene i abonnementsplanen din. Ellers gjelder disse generelle begrensningene:

  • Maksimal filstørrelse: 1024 MB
  • Maksimal lydlengde: 180 minutter

100 % fornybar?

Selv om Freezetales datasenter ligger i Norge, er GPU-ene som kjører transkripsjonene våre plassert i og drevet av Islands 100 % fornybare vann- og geotermiske energiforsyning. Dette gjør at vi kan levere transkripsjoner med nærmest null karbonavtrykk, og samtidig være fullt i samsvar med EUs personvernforordning (GDPR).

Et produkt fra Nattskiftet
Laget i Norge
KontaktPersonvernerklæringVilkår for bruk