Training jobs
Stream job logs
Server-sent events. Each data: line is one log line: the provisioning log first, then the worker’s stdout tail, polled every 3 seconds. The stream ends with [Job completed], [Job failed] or [Job cancelled] when the job reaches a terminal state, or [Log stream timeout] after 30 minutes; reconnect to keep following. For the whole log as one text body, use GET /v1/training_jobs/{job_id}/logs/full.
GET
/
v1
/
training_jobs
/
{job_id}
/
logs
Stream job logs
curl --request GET \
--url https://api.veri.studio/v1/training_jobs/{job_id}/logs \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.veri.studio/v1/training_jobs/{job_id}/logs"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.veri.studio/v1/training_jobs/{job_id}/logs', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<string>Stream job logs
curl --request GET \
--url https://api.veri.studio/v1/training_jobs/{job_id}/logs \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.veri.studio/v1/training_jobs/{job_id}/logs"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.veri.studio/v1/training_jobs/{job_id}/logs', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<string>
