curl --request GET \
--url https://helve.dev/v1/jobs/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://helve.dev/v1/jobs/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://helve.dev/v1/jobs/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://helve.dev/v1/jobs/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://helve.dev/v1/jobs/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://helve.dev/v1/jobs/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://helve.dev/v1/jobs/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"tool": "transcription",
"status": "queued",
"provider": "assemblyai",
"model": "<string>",
"attempt_status": "queued",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"finished_at": "2023-11-07T05:31:56Z",
"result": {
"text": "<string>",
"provider": "assemblyai",
"model": "<string>",
"language": "<string>",
"duration_seconds": 1,
"words": [
{
"text": "<string>",
"start": 1,
"end": 1,
"speaker_id": "<string>",
"confidence": 0.5
}
],
"usage": {
"cost_usd": 1,
"credits": 1
}
},
"error": {
"type": "<string>",
"message": "<string>"
}
}{
"error": {
"type": "unauthorized",
"message": "<string>",
"detail": "<unknown>"
}
}{
"error": {
"type": "unauthorized",
"message": "<string>",
"detail": "<unknown>"
}
}{
"error": {
"type": "unauthorized",
"message": "<string>",
"detail": "<unknown>"
}
}{
"error": {
"type": "unauthorized",
"message": "<string>",
"detail": "<unknown>"
}
}{
"error": {
"type": "unauthorized",
"message": "<string>",
"detail": "<unknown>"
}
}Get a job
One read for the whole lifecycle: state while the job runs, the transcript in result once it completes, the reason in error once it fails. Jobs are retained for seven days.
curl --request GET \
--url https://helve.dev/v1/jobs/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://helve.dev/v1/jobs/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://helve.dev/v1/jobs/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://helve.dev/v1/jobs/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://helve.dev/v1/jobs/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://helve.dev/v1/jobs/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://helve.dev/v1/jobs/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"tool": "transcription",
"status": "queued",
"provider": "assemblyai",
"model": "<string>",
"attempt_status": "queued",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"finished_at": "2023-11-07T05:31:56Z",
"result": {
"text": "<string>",
"provider": "assemblyai",
"model": "<string>",
"language": "<string>",
"duration_seconds": 1,
"words": [
{
"text": "<string>",
"start": 1,
"end": 1,
"speaker_id": "<string>",
"confidence": 0.5
}
],
"usage": {
"cost_usd": 1,
"credits": 1
}
},
"error": {
"type": "<string>",
"message": "<string>"
}
}{
"error": {
"type": "unauthorized",
"message": "<string>",
"detail": "<unknown>"
}
}{
"error": {
"type": "unauthorized",
"message": "<string>",
"detail": "<unknown>"
}
}{
"error": {
"type": "unauthorized",
"message": "<string>",
"detail": "<unknown>"
}
}{
"error": {
"type": "unauthorized",
"message": "<string>",
"detail": "<unknown>"
}
}{
"error": {
"type": "unauthorized",
"message": "<string>",
"detail": "<unknown>"
}
}Authorizations
An API key from the dashboard, sk_live_…, sent as Authorization: Bearer sk_live_….
Path Parameters
The job id returned when the recording was submitted.
^job_[0-9a-f-]{36}$Response
Job state, with the transcript once completed or the error once failed
^job_[0-9a-f-]{36}$transcription queued and running are in progress; completed carries result; failed carries error.
queued, running, completed, failed assemblyai, deepgram, elevenlabs Where the current provider attempt is: waiting means the provider accepted the audio and Helve is polling or awaiting its callback; unknown means Helve is reconciling an uncertain submission rather than re-sending it.
queued, submitting, waiting, unknown, completed, failed Set once the job is completed or failed.
The transcript, present only when status is completed.
Show child attributes
Show child attributes
Why the job failed, present only when status is failed.
Show child attributes
Show child attributes