Log inTalk to us

List an EVSE's text messages and their status

get/v1/tenants/{tenant_id}/stations/{station_id}/evses/{evse_number}/display/messages
Requires an API key

Messages that are not deleted, oldest first, from Ivora's repository without a charger read. Filter with status.

Path parameters

  • tenant_idintegerRequired
  • station_idintegerRequired
  • evse_numberintegerRequired
    OCPP EVSE number on the station, as in connectors[].evse_number
    Greater than 0 · Maximum 99

Query parameters

  • statusenum | null
    One of pending, applied, failed, unsupported

Returns · 200

  • dataarray of MessageRecordRequired
    Child attributes
    • idstringRequired
    • tenant_idintegerRequired
    • station_idintegerRequired
    • evse_numberintegerRequired
    • textstringRequired
    • languagestring | nullRequired
    • formatstringRequired
    • starts_atstring | nullRequired
    • ends_atstring | nullRequired
    • priorityenumRequired
      One of normal, urgent
    • stateenumRequired
      One of idle, charging, always
    • statusenumRequired
      pending: not yet sent (also while the charger is offline or has not connected). applied: the charging core accepted the push, which does not prove the screen shows it. failed: the push was refused or unconfirmed and is retried with backoff; last_error has the code. unsupported: no display adapter template carries text for this charger; reason says why and nothing is sent.
      One of pending, applied, failed, unsupported
    • last_errorstring | nullRequired
      Error code of the last failed or withheld push, for example dispatch_unconfirmed, message_too_long or no_text_adapter.
    • reasonstring | nullRequired
      Why the message is unsupported or failed, in words.
    • adapterstring | nullRequired
      What delivers it: ocpp2-display-message on OCPP 2.x, else the display adapter template with a text section, null when none applies.
    • ocpp_message_idintegerRequired
      The message id on OCPP 2.x chargers (SetDisplayMessage id). Never reused on the station and never one of the QR or price ids.
    • deletedbooleanRequired
    • last_attempt_atstring | nullRequired
    • applied_atstring | nullRequired
    • created_atstringRequired
    • updated_atstringRequired
GET /v1/tenants/{tenant_id}/stations/{station_id}/evses/{evse_number}/display/messages
curl --fail-with-body "https://api.ivoracharge.com/v1/tenants/1042/stations/1/evses/1/display/messages" \
  -H "Authorization: Bearer $IVORA_API_KEY"
Response · 200JSON
{
  "data": [
    {
      "id": "id_0123456789abcdef",
      "tenant_id": 1042,
      "station_id": 1,
      "evse_number": 1,
      "text": "string",
      "language": "string",
      "format": "plain",
      "starts_at": "2026-09-30T17:00:00Z",
      "ends_at": "2026-09-30T17:00:00Z",
      "priority": "normal",
      "state": "idle",
      "status": "pending",
      "last_error": "string",
      "reason": "string",
      "adapter": "string",
      "ocpp_message_id": 1,
      "deleted": false,
      "last_attempt_at": "2026-09-30T17:00:00Z",
      "applied_at": "2026-09-30T17:00:00Z",
      "created_at": "2026-09-30T17:00:00Z",
      "updated_at": "2026-09-30T17:00:00Z"
    }
  ]
}
Requires an approved production API keyProduction access starts with a request, a short meeting with Ivora and a card on file, after which Ivora staff grant your account access. How to request access
Try itproduction · api.ivoracharge.com

Paste a production api key (iv_live_…). Create keys in Developer tools. The key stays in this page's memory, is sent only to https://api.ivoracharge.com and clears when you reload. Test keys are refused.