Skip to content
getgeolens.com

Check Source Health

POST
/datasets/{dataset_id}/source-health/
curl --request POST \
--url https://example.com/datasets/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/source-health/ \
--header 'Authorization: Bearer <token>'

Contact this dataset’s origin and record what came back.

Owner-or-admin: this makes GeoLens issue an outbound request on the caller’s behalf and writes to the dataset row. Readers get the stored result from GET /datasets/{id} instead.

dataset_id
required
Dataset Id
string format: uuid

Successful Response

Media type application/json
SourceHealthResponse

Result of one on-demand origin probe (ADR-002, #1222).

Shares its first three words with VrtSourceHealth.status, so the UI renders one legend across VRT members and standalone origins. VrtSourceHealth carries a fourth, VRT-specific value, stale (fix(#1221)): it means a member’s raster was replaced after the parent VRT was last built, and it does not apply to a single-origin probe. This endpoint always probes, so it also never returns the OTHER fourth value, unknown — the response-boundary projection of a never-determined NULL column, which reaches clients through DatasetResponse, not through here.

object
dataset_id
required
Dataset Id
string format: uuid
origin
required
Any of:
string
source_health
required
Source Health

Healthy — the origin answered and the resource is there. missing — the origin answered authoritatively that it is gone (404/410). inaccessible — GeoLens could not determine either way, which includes 401/403: access was lost, the data may be intact.

string
Allowed values: healthy missing inaccessible
source_health_detail
Any of:
string
last_checked_at
Any of:
string format: date-time
Example
{
"source_health": "healthy"
}

Bad request — invalid 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 write access

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"
}

Conflict — resource state prevents the operation

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"
}