For the complete documentation index, see llms.txt. This page is also available as Markdown.

Errors

GET /api/errors

Retrieve a list of charger errors. This is the same set of rows shown in the Charger errors report in the application.

Results are returned in reverse chronological order (most recent first) and are paginated with an opaque cursor (up to 2000 rows per page); see Pagination and Error Handling for details about the pagination approach.

Parameters

Parameters should be passed as query parameters on the URL. For parameters that accept a list of IDs, pass the param multiple times, e.g. &organizationIds=1&organizationIds=2.

  • afterTimestamp - ISO 8601 date string. Only return errors whose timestamp is greater than or equal to this time.

  • beforeTimestamp - ISO 8601 date string. Only return errors whose timestamp is less than or equal to this time.

  • organizationIds - Filter to organizations if using an API key that has access to multiple organizations.

  • siteIds - Restrict to errors on chargers at these sites. Pass the parameter multiple times for multiple ids.

  • chargerIds - Restrict to errors on these chargers. Pass the parameter multiple times for multiple ids.

  • nextPageCursor - When the filters match more than one page of data, pass this value (returned in the previous response) to fetch the next page. Keep all other parameters the same as in the previous request.

Response

The JSON response will contain a data field with a list of errors matching the filters, and a pagination field containing pagination details.

{
  data: {
    id: number; // charging port status id, stable across requests
    timestamp: string; // ISO 8601 format, when the error was reported by the charger
    ocppErrorCode: string; // Error code field from OCPP
    vendorErrorCode: string | null; // Vendor error code field from OCPP
    ocppInfo: string | null; // Info field from OCPP
    ocppStatus: string; // OCPP status the port was in when the error was reported (e.g. Faulted)
    
    // 'endedCharging' = error ended an in-progress session
    // 'preventedCharging' = error blocked a session from starting
    // 'muted' = error triggered an alert that was muted
    // 'other' = error did not fit any of the above buckets
    errorCategory: 'endedCharging' | 'preventedCharging' | 'muted' | 'other';
    // Linked charging session, only set if this error caused or occurred during a session
    chargingSession: {
      id: number;
      startTime: string; // ISO 8601 format
      endTime: string | null; // ISO 8601 format
      durationSeconds: number | null;
      energyDeliveredKwh: number | null;
      socStartPercent: number | null; // State of charge at start of session, if reported
      socEndPercent: number | null; // State of charge at end of session, if reported
    } | null;
    site: {
      id: number;
      name: string;
      locationId: string | null;
    } | null;
    charger: {
      id: number;
      name: string;
      manufacturer: string | null;
      model: string | null;
      networkServiceProvider: string;
      chargerType: string;
      serialNumber: string | null;
      numberOfPorts: number;
      latitude: number | null;
      longitude: number | null;
      externalId: string | null;
      ocppId: string | null;
    } | null;
    port: {
      id: number;
      name: string;
      portNumber: number;
      maximumPowerKw: number | null;
    } | null;
    organization: {
      id: number;
      name: string;
    } | null;
  }[];
  pagination: {
    hasNextPage: boolean;
    nextPageCursor: string | null;
  };
}

Example request and response

Request:

Response:

Last updated