---
title: "Get job progress (JSON polling or SSE)"
method: GET
path: "/api/jobs/:jobId/progress"
tags: ["Jobs"]
---

# Get job progress (JSON polling or SSE)

`GET /api/jobs/:jobId/progress`

## Request

- Base URL: `https://api.cernion.de`
- URL: `https://api.cernion.de/api/jobs/:jobId/progress`
- Auth: none declared

Returns normalized job progress. Use query `stream=true` for text/event-stream output. SSE supports `Last-Event-ID` replay (or `lastEventId` query fallback).

## Path parameters

- `jobId` string, required

## Query parameters

- `stream` boolean
- `lastEventId` string
- `token` string

## Headers

- `Last-Event-ID` string

## Response `200`

Progress payload (JSON) or SSE stream (text/event-stream)

## Other responses

- `404`: Job not found (unknown ID or TTL expired)

---

[API](https://skmtc.dev/cernion/apis/cernion-energy-tools-api.md) · [All operations](https://skmtc.dev/cernion/apis/cernion-energy-tools-api/llms.txt) · [OpenAPI document](https://skmtc.dev/cernion/apis/cernion-energy-tools-api/revisions/cdb94473b538?raw)
