Jobs
Monitoring

Campaign cache health probe

Reports whether the sponsor-budget cache that Jobs::search depends on is warm AND whether the refresh job is firing on schedule. Designed as a polling target for uptime monitors (Pingdom / CloudWatch synthetics / Datadog). Read-only, no business data leaks. AUTH CHANGED 2026-09-03: this endpoint carries api_auth, and api.publisher_auth_required is now enabled in production — so on api.juju.com a monitor MUST send Authorization: Bearer <api key> or it will receive 401 instead of the health body. Alert on stale_warning=true (refresh stopped firing — ~8min before customer impact) or live_providers=false (search already returning empty).

get/api/v1/jobs/budget-status

Request

  • Base URL: https://api.juju.com
  • URL: https://api.juju.com/api/v1/jobs/budget-status
  • Auth: none declared

Response

Always 200. Read the body fields, not the status, to determine cache health.

metaobject required

Pagination and context metadata. Always present, empty object ({}) when no metadata applies to the response.

errorsstring[] required

Empty array on success. On failure, human-readable error strings suitable for surfacing to end users.

Example response

{
  "data": {
    "live_providers": true,
    "fq_clause": true,
    "refresh_age_seconds": 45,
    "remaining_ttl_seconds": 555
  },
  "errors": []
}

Changes

No recorded changes to this operation across all 1 revision of this API.