await request("/uploads/" + encodeURIComponent(course.upload.upload_id) + "/complete", "POST", {}); let current; for (;;) { current = await request("/courses/" + course.course_id); if (current.status === "ready") break; if (current.status === "failed") throw new Error(current.error); await new Promise(resolve => setTimeout(resolve, 2000)); } console.log(current.course_id, current.format);