Utilita Incidents API

Unplanned service incidents and their update timeline.

Operations 2

GET /incidents.json List recent incidents #
GET /incidents/unresolved.json List unresolved incidents #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/utilita-incidents-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

utilita-incidents-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Utilita Status Incidents API
  version: '2'
  summary: Public, anonymous read API for Utilita Energy service status, components, incidents and scheduled maintenance.
  description: 'Utilita Energy publishes a public status page at https://status.utilita.co.uk/ running on Atlassian Statuspage, and that page exposes the standard Statuspage v2 read API on the Utilita domain. It is the only public, anonymous, machine-readable API surface API Evangelist has been able to verify for Utilita: it returns the live operational state of Utilita''s own components — SMETS1 / SMETS1 (DCC Enrolled) / SMETS2 smart meters, Guest Payments, PayPoint and PayZone in-store payments, the PayPoint IVR top-up line, Open Banking, My Utilita (app and web portal), Power-up functionality, utilita.co.uk, join.utilita.co.uk, the Contact Centre, telephone lines, the chatbot, smart meter installations and the smart metering network.

    PROVENANCE — this document was GENERATED by API Evangelist from live anonymous probes of the eight endpoints Utilita''s own API documentation page (https://status.utilita.co.uk/api) lists. Utilita does not publish an OpenAPI document. Every path, response shape and example below was observed on 2026-07-27; each operation carries an `x-evidence` block recording the URL probed, the HTTP status returned and the date. No operation, parameter or field has been invented — the API is read-only and has no documented request parameters.'
  contact:
    name: Utilita Help
    url: https://utilita.co.uk/help
  license:
    name: Not published
    url: https://www.atlassian.com/legal/product-specific-terms#statuspage-specific-terms
  x-platform: Atlassian Statuspage
  x-status-page-id: lgm23svnh0xr
  x-generated-by: API Evangelist enrichment pipeline (live endpoint observation)
  x-generated-on: '2026-07-27'
  x-documentation: https://status.utilita.co.uk/api
servers:
- url: https://status.utilita.co.uk/api/v2
  description: Production — public, anonymous, no authentication required
security: []
tags:
- name: Incidents
  description: Unplanned service incidents and their update timeline.
paths:
  /incidents.json:
    get:
      operationId: getIncidents
      summary: List recent incidents
      description: Returns the most recent incidents on the page (resolved and unresolved), each with its full `incident_updates` timeline and the components it affected.
      tags:
      - Incidents
      security: []
      responses:
        '200':
          description: Recent incidents.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IncidentsResponse'
        '404':
          $ref: '#/components/responses/NotFound'
      x-evidence:
        url: https://status.utilita.co.uk/api/v2/incidents.json
        http_status: 200
        content_type: application/json; charset=utf-8
        probed: '2026-07-27'
        observed_incident_count: 50
        note: Verbatim response not stored as an example — the observed payload was ~208 KB of incident history. Shape is identical to the unresolved-incidents example.
  /incidents/unresolved.json:
    get:
      operationId: getUnresolvedIncidents
      summary: List unresolved incidents
      description: Returns only the incidents that are not yet resolved. Empty array when all systems are operational.
      tags:
      - Incidents
      security: []
      responses:
        '200':
          description: Unresolved incidents.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IncidentsResponse'
        '404':
          $ref: '#/components/responses/NotFound'
      x-evidence:
        url: https://status.utilita.co.uk/api/v2/incidents/unresolved.json
        http_status: 200
        content_type: application/json; charset=utf-8
        probed: '2026-07-27'
        example: examples/utilita-status-unresolved-incidents.json
components:
  responses:
    NotFound:
      description: The requested resource could not be found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            errors:
            - The requested resource could not be found.
  schemas:
    Component:
      type: object
      description: A single Utilita service tracked on the status page.
      properties:
        id:
          type: string
          example: y54fk6gsgfjr
        name:
          type: string
          example: SMETS1 Smart Meters
        description:
          type:
          - string
          - 'null'
        status:
          type: string
          enum:
          - operational
          - degraded_performance
          - partial_outage
          - major_outage
          - under_maintenance
          example: operational
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        position:
          type: integer
        page_id:
          type: string
        group:
          type: boolean
          description: True when this component is a group containing other components.
        group_id:
          type:
          - string
          - 'null'
          description: Identifier of the parent group component, when this component belongs to one.
        only_show_if_degraded:
          type: boolean
        showcase:
          type: boolean
        start_date:
          type:
          - string
          - 'null'
          format: date
      required:
      - id
      - name
      - status
    IncidentUpdate:
      type: object
      description: One entry in an incident's update timeline.
      properties:
        id:
          type: string
        status:
          type: string
          enum:
          - investigating
          - identified
          - monitoring
          - resolved
          - postmortem
          - scheduled
          - in_progress
          - verifying
          - completed
        body:
          type: string
        incident_id:
          type: string
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        display_at:
          type: string
          format: date-time
        affected_components:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/AffectedComponent'
        deliver_notifications:
          type: boolean
        custom_tweet:
          type:
          - string
          - 'null'
        tweet_id:
          type:
          - string
          - 'null'
      required:
      - id
      - status
      - body
      - incident_id
    Error:
      type: object
      description: Error envelope observed on this API. Not RFC 9457 problem+json — a plain JSON object with an `errors` array of human-readable strings, served as application/json.
      properties:
        errors:
          type: array
          items:
            type: string
      required:
      - errors
    Page:
      type: object
      description: Identity of the Utilita status page the response came from.
      properties:
        id:
          type: string
          description: Statuspage page identifier.
          example: lgm23svnh0xr
        name:
          type: string
          example: Utilita Status Page
        url:
          type: string
          format: uri
          example: https://status.utilita.co.uk
        time_zone:
          type: string
          example: Europe/London
        updated_at:
          type: string
          format: date-time
      required:
      - id
      - name
      - url
      - updated_at
    Incident:
      type: object
      description: An unplanned service incident.
      properties:
        id:
          type: string
          example: z7l2g8m2n80d
        name:
          type: string
          example: Card Payments Authorisation Issue
        status:
          type: string
          enum:
          - investigating
          - identified
          - monitoring
          - resolved
          - postmortem
        impact:
          type: string
          enum:
          - none
          - minor
          - major
          - critical
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        monitoring_at:
          type:
          - string
          - 'null'
          format: date-time
        resolved_at:
          type:
          - string
          - 'null'
          format: date-time
        started_at:
          type: string
          format: date-time
        shortlink:
          type: string
          format: uri
        page_id:
          type: string
        incident_updates:
          type: array
          items:
            $ref: '#/components/schemas/IncidentUpdate'
        components:
          type: array
          items:
            $ref: '#/components/schemas/Component'
      required:
      - id
      - name
      - status
      - impact
    AffectedComponent:
      type: object
      description: A component touched by an incident update, with its status transition.
      properties:
        code:
          type: string
          description: Component id.
        name:
          type: string
        old_status:
          type: string
        new_status:
          type: string
    IncidentsResponse:
      type: object
      properties:
        page:
          $ref: '#/components/schemas/Page'
        incidents:
          type: array
          items:
            $ref: '#/components/schemas/Incident'
      required:
      - page
      - incidents
externalDocs:
  description: Utilita Status Page API documentation (published by Utilita on its status page)
  url: https://status.utilita.co.uk/api