Skip to content
getgeolens.com

Get Job Status By Dataset

GET
/jobs/by-dataset/{dataset_id}
curl --request GET \
--url https://example.com/jobs/by-dataset/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \
--header 'Authorization: Bearer <token>'

Look up the most recent ingest job for a dataset.

Used by the dataset detail page to surface ingest warnings permanently (S3 completion) — the job is the source of truth for reserved_rename / dbf_truncation_collision / mercator_clip / archive_failed / temporal_parse_errors metadata.

Returns the most recently created completed job for the dataset. When the dataset is visible but has no ingest job (e.g. registered from an existing table, or a remote/STAC dataset), returns 200 with a null body instead of 404 — a “no job” outcome is normal for these datasets and a 404 would needlessly pollute the browser console on the dataset detail page. A genuine 404 is still raised when the dataset is not visible to the user, to avoid leaking job existence (see visibility check below).

Not every caller gets every field. Seeing the dataset decides whether there is an answer at all; who ran the job decides how much of the answer is filled in. The dataset’s owner, an admin, and the job’s own creator get the full payload. Any other reader of a visible dataset gets the job id, its status and its timestamps, with the run’s own detail nulled: no error_message, source_filename, warnings, step, row counts or retry hint. That is the redaction GET /datasets/{dataset_id}/refresh-runs already applies to the same failure text, and _redacted_job_status documents the decision field by field.

dataset_id
required
Dataset Id
string format: uuid

Successful Response

Media type application/json
Any of:
JobStatusResponse
object
id
required
Id
string format: uuid
status
required
Status
string
Allowed values: pending running complete failed cancelled fanned_out
dataset_id
required
Any of:
string format: uuid
source_filename
required
Any of:
string
error_message
required
Any of:
string
error_code
Any of:
string
can_retry
required
Can Retry
boolean
retry_reason
required
Any of:
string
warning_message
Any of:
string
warnings
Warnings
Array
One of: discriminator: kind
ReservedRenameWarning
object
kind
required
Kind
string
Allowed value: reserved_rename
details
required
Details
Array<object>
ReservedRenameDetail
object
original
required
Original
string
renamed
required
Renamed
string
progress
Any of:
number
<= 1
current_step
Any of:
string
Allowed values: queued downloading validating ogr2ogr finalize complete cog_convert quicklook analyzing registering
rows_processed
Any of:
integer
rows_failed
Any of:
integer
archive_failed
Archive Failed
boolean
temporal_parse_errors
Temporal Parse Errors
object
key
additional properties
string
started_at
required
Any of:
string format: date-time
completed_at
required
Any of:
string format: date-time
created_at
required
Created At
string format: date-time
Example
{
"status": "pending",
"warnings": [
{
"kind": "reserved_rename"
}
],
"current_step": "queued",
"archive_failed": false
}

Bad request — invalid query parameters or payload

Media type application/problem+json
ProblemDetail
object
type
Type
string
default: about:blank
title
required
Title
string
status
required
Status
integer
detail
required
Any of:
string
Example
{
"detail": "Dataset not found",
"status": 404,
"title": "Not Found",
"type": "about:blank"
}

Unauthorized — missing or invalid credentials

Media type application/problem+json
ProblemDetail
object
type
Type
string
default: about:blank
title
required
Title
string
status
required
Status
integer
detail
required
Any of:
string
Example
{
"detail": "Dataset not found",
"status": 404,
"title": "Not Found",
"type": "about:blank"
}

Forbidden — caller lacks access to this resource

Media type application/problem+json
ProblemDetail
object
type
Type
string
default: about:blank
title
required
Title
string
status
required
Status
integer
detail
required
Any of:
string
Example
{
"detail": "Dataset not found",
"status": 404,
"title": "Not Found",
"type": "about:blank"
}

Not found

Media type application/problem+json
ProblemDetail
object
type
Type
string
default: about:blank
title
required
Title
string
status
required
Status
integer
detail
required
Any of:
string
Example
{
"detail": "Dataset not found",
"status": 404,
"title": "Not Found",
"type": "about:blank"
}

Validation error

Media type application/problem+json
ProblemDetail
object
type
Type
string
default: about:blank
title
required
Title
string
status
required
Status
integer
detail
required
Any of:
string
Example
{
"detail": "Dataset not found",
"status": 404,
"title": "Not Found",
"type": "about:blank"
}

Too many requests — retry after the advertised interval

Media type application/problem+json
ProblemDetail
object
type
Type
string
default: about:blank
title
required
Title
string
status
required
Status
integer
detail
required
Any of:
string
Example
{
"detail": "Dataset not found",
"status": 404,
"title": "Not Found",
"type": "about:blank"
}
Retry-After
integer

Seconds until the request may be retried

Internal server error

Media type application/problem+json
ProblemDetail
object
type
Type
string
default: about:blank
title
required
Title
string
status
required
Status
integer
detail
required
Any of:
string
Example
{
"detail": "Dataset not found",
"status": 404,
"title": "Not Found",
"type": "about:blank"
}

Service unavailable — the database could not serve the request

Media type application/problem+json
ProblemDetail
object
type
Type
string
default: about:blank
title
required
Title
string
status
required
Status
integer
detail
required
Any of:
string
Example
{
"detail": "Dataset not found",
"status": 404,
"title": "Not Found",
"type": "about:blank"
}