MQ Documentation 1.0

The Ocean system integrates numerous charging points across various locations. To gather information about the current statuses of each asset, user, session, or any other data in the system, the external system can employ several approaches.

One of the approaches is to request data using Ocean’s Message Queue. These messages are asynchronous and are sent at any important change. The messages are created on the fly during the execution of some logical process, without an additional database search. Therefore, they have only a light impact on the system’s performance.

Each API user can be set to listen to several messages that Ocean creates and publishes onto the Message Queue. A new and independent queue is created for each message and each API user.

When an important event occurs, the Ocean system creates a message, for example, “ChargePointConnectorStatusChanged,” and copies it to all relevant queues. This means that each API user gets its own copy and is responsible for it. The messages stay in the queue until the API user subscribes to the queue, reads messages, and acknowledges them. If the messages are just read and not acknowledged, they stay in the queue and are resent later upon the re-established subscription. If the API user is not subscribed to the queue at the time of the event, the message is still put into the queue and waits for the API user to subscribe to the queue.

Message Queue

There are some limitations (number and time) when the messages are in any case removed from the queue. API user is responsible to maintain the connection and the subscription to the Message queue to avoid losing messages.
  • #Charging Session
  • #Billing
  • #Support
  • #Online Status
  • #CRM
  • #Asset management
  • #Tariff

Operations

  • SUB {API_ACCESS_KEY}.{locationId}.session.started

    When system receives from charger that sessions has started

    Operation ID{API_ACCESS_KEY}.*.session.started
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Charging Session Started
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.session.started.user

    When system receives from charger that sessions has started. In this case smaller object is send.

    Operation ID{API_ACCESS_KEY}.*.session.started.user
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Charging Session Started User
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.session.ended

    When system receives from charger that sessions has ended.

    Operation ID{API_ACCESS_KEY}.*.session.ended
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Charging Session Ended
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.session.billing.user.ended

    After session user billing is successfully executed.

    Operation ID{API_ACCESS_KEY}.*.session.billing.user.ended
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Charging Session User Billing Ended
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.session.billing.b2b.ended

    After session B2B billing is successfully executed.

    Operation ID{API_ACCESS_KEY}.*.session.billing.b2b.ended
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Charging Session B2B Billing Ended
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.session.manuallyChanged

    After operator manually changes charging session data.

    Operation ID{API_ACCESS_KEY}.*.session.manuallyChanged
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Charging Session Data Manually Changed
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.session.disputed

    When operator or API disputes charging session. This usually happens when costs are too high, customer was not satisfied with service or there is a mistake in data. At session dispute system deletes old session and creates a new one, referenced to the old one.

    Operation ID{API_ACCESS_KEY}.session.disputed
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #Charging Session

    Accepts the following message:

    Charging Session Disputed
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.session.measurementsChanged

    When measurements are stored into the Ocean.

    Operation ID{API_ACCESS_KEY}.*.session.measurementsChanged
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Measurement Changed
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.session.vehicle80PercentFull

    When EV battery is 80% full. This message is triggered only on connector reporting SOC.

    Operation ID{API_ACCESS_KEY}.*.session.vehicle80PercentFull
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Charging Session Vehicle Is 80 Percent Full
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.session.vehicleFull

    When detected that user vehicle is full (SOC 100% or Power almost 0 for a longer time).

    Operation ID{API_ACCESS_KEY}.*.session.vehicleFull
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Charging Session Vehicle Is Full
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.session.ended.regulary

    When connector status changes from one of the charging status (Charging, PausedByEV, PausedByEVSE) to Available or Finishing and local EMSP user is charging.

    Operation ID{API_ACCESS_KEY}.*.session.ended.regulary
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Charging Session Ended Regulary
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.session.ended.fault

    When connector status changes from one of the charging status (Charging, PausedByEV, PausedByEVSE) to Fault and local EMSP user is charging.

    Operation ID{API_ACCESS_KEY}.*.session.ended.fault
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Charging Session Ended With Fault
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.reservation.created

    When EV user successfully posts new reservation.

    Operation ID{API_ACCESS_KEY}.*.reservation.created
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Reservation Created
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.reservation.canceled

    When EV user successfully cancels upcoming reservation.

    Operation ID{API_ACCESS_KEY}.*.reservation.canceled
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Reservation Canceled
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.reservation.timeChanged

    When customer or operator changes reservation time.

    Operation ID{API_ACCESS_KEY}.*.reservation.timeChanged
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Reservation Time Changed
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.session.preference.changed

    When customer or operator changes charging session preferences.

    Operation ID{API_ACCESS_KEY}.*.session.preference.changed
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Charging Session

    Accepts the following message:

    Charging Session Preference Changed
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.invoice.user.ready

    When Ocean generates invoice documents or when they are uploaded to Ocean.

    Operation ID{API_ACCESS_KEY}.invoice.user.ready
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #Billing

    Accepts the following message:

    Invoice Document Ready
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{invoiceTypeId}.{invoiceTemplateId}.documentGenerationPending

    • When Ad-hoc session payment is executed
    • when session is disputed and new dispute invoice needs be be generated
    • when duplicate invoice generation is triggered by operator
    • when operator manually creates new invoice
    • when monthly subscription service is regularly generating subscription invoices
    Operation ID{API_ACCESS_KEY}.*.*.documentGenerationPending
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    invoiceTypeId
    required
    integer
    format: int32

    Invoice type ID. Every invoice type has a unique ID.

    invoiceTemplateId
    required
    integer
    format: int32

    Invoice template ID. Every invoice template has a unique ID.

    • #Billing

    Accepts the following message:

    Invoice Document Pending To Be Generated
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.invoicesPeriodic.published

    When operator triggers publishing monthly subscriptions or generation of post-payment invoices.

    Operation ID{API_ACCESS_KEY}.invoicesPeriodic.published
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #Billing

    Accepts the following message:

    Invoices Periodic Published
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.helpdesk.ticket.raisedByUser

    When connector status changes.

    Operation ID{API_ACCESS_KEY}.helpdesk.ticket.raisedByUser
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #Support

    Accepts the following message:

    Help Desk Ticket User Raised
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.helpdesk.ticket.statusChanged

    When ticket status changes.

    Operation ID{API_ACCESS_KEY}.helpdesk.ticket.statusChanged
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #Support

    Accepts the following message:

    Help Desk Ticket Status Changed
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.helpdesk.ticket.operatorResponded

    When operator responds to the ticket.

    Operation ID{API_ACCESS_KEY}.helpdesk.ticket.operatorResponded
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #Support

    Accepts the following message:

    Help Desk Ticket Operator Responded
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.maintenance.taskCreated

    When new maintenance task is created (2nd level support).

    Operation ID{API_ACCESS_KEY}.maintenance.taskCreated
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #Support

    Accepts the following message:

    Maintenance Task Created
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.maintenance.taskStatusChange

    When maintenance task status changes.

    Operation ID{API_ACCESS_KEY}.maintenance.taskStatusChange
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #Support

    Accepts the following message:

    Maintenance Task Status Change
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.maintenance.taskNewInternalComment

    When operator responses with new comment to the maintenance task. Comments are used for communication between team members or store process steps.

    Operation ID{API_ACCESS_KEY}.maintenance.taskNewInternalComment
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #Support

    Accepts the following message:

    Maintenance Task New Internal Comment
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.{chargePointId}.communication.status.changed

    • When heartbeat event is not received in a predefined number of consecutive intervals. Number of consecutive intervals is defined in Settings -> Instance Settings -> Charge Point Communication -> Timings
    • When heartbeat is received after charge point communication was offline.
    Operation ID{API_ACCESS_KEY}.*.*.communication.status.changed
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    chargePointId
    required
    integer
    format: int32

    Charge point ID. Every Charge point has a unique ID.

    • #Online Status

    Accepts the following message:

    Charge Point Communication Status Changed
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.connector.statusChanged

    When connector status changes

    Operation ID{API_ACCESS_KEY}.*.connector.statusChanged
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Online Status

    Accepts the following message:

    Charge Point Connector Status Changed
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.roamingConnectors.statusChanged

    When roaming connector status changes

    Operation ID{API_ACCESS_KEY}.roamingConnectors.statusChanged
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #Online Status

    Accepts the following message:

    Roaming Connectors Status Changed
    tuple<object, ...optional<any>>
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.{eventTypePriorityId}.{eventSourceId}.system.event

    Informational messages - notifications, warnings, errors

    Operation ID{API_ACCESS_KEY}.*.*.*.system.event
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    eventTypePriorityId
    required
    integer
    format: int32

    Event type priority ID. Every event type priority has a unique ID.

    eventSourceId
    required
    integer
    format: int32

    Event source ID. Every event source has a unique ID.

    • #Online Status

    Accepts the following message:

    Roaming Connectors Status Changed
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.security.event

    When system detects security event

    Operation ID{API_ACCESS_KEY}.security.event
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #Online Status

    Accepts the following message:

    Security Event
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.user.account.blocked

    When user is blocked.

    Operation ID{API_ACCESS_KEY}.user.account.blocked
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #CRM

    Accepts the following message:

    User Account Blocked
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.user.account.unblocked

    When user is unblocked.

    Operation ID{API_ACCESS_KEY}.user.account.unblocked
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #CRM

    Accepts the following message:

    User Account Unblocked
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{userId}.user.account.inserted

    When user is created.

    Operation ID{API_ACCESS_KEY}.*.user.account.inserted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    userId
    required
    integer
    format: int32

    User ID. Every user has a unique ID.

    • #CRM

    Accepts the following message:

    User Account Inserted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{userId}.user.account.updated

    When user is updated.

    Operation ID{API_ACCESS_KEY}.*.user.account.updated
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    userId
    required
    integer
    format: int32

    User ID. Every user has a unique ID.

    • #CRM

    Accepts the following message:

    User Account Updated
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{userId}.user.account.deleted

    When user is updated.

    Operation ID{API_ACCESS_KEY}.*.user.account.deleted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    userId
    required
    integer
    format: int32

    User ID. Every user has a unique ID.

    • #CRM

    Accepts the following message:

    User Account Deleted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.userPayer.account.blocked

    When user payer is blocked.

    Operation ID{API_ACCESS_KEY}.userPayer.account.blocked
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #CRM

    Accepts the following message:

    User Payer Account Blocked
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.userPayer.account.unblocked

    When user payer is unblocked.

    Operation ID{API_ACCESS_KEY}.userPayer.account.unblocked
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #CRM

    Accepts the following message:

    User Payer Account Unblocked
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.userPayer.account.paymentBlocked

    When user payer payment is blocked.

    Operation ID{API_ACCESS_KEY}.userPayer.account.paymentBlocked
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #CRM

    Accepts the following message:

    User Payer Account Payment Blocked
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.userPayer.account.paymentUnblocked

    When user payer payment is unblocked.

    Operation ID{API_ACCESS_KEY}.userPayer.account.paymentUnblocked
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #CRM

    Accepts the following message:

    User Payer Account Payment Unblocked
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{userPayerId}.userPayer.account.inserted

    When user payer is created.

    Operation ID{API_ACCESS_KEY}.*.userPayer.account.inserted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    userPayerId
    required
    integer
    format: int32

    User payer ID. Every payer has a unique ID.

    • #CRM

    Accepts the following message:

    User Payer Account Inserted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{userPayerId}.userPayer.account.updated

    When user payer is updated.

    Operation ID{API_ACCESS_KEY}.*.userPayer.account.updated
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    userPayerId
    required
    integer
    format: int32

    User payer ID. Every payer has a unique ID.

    • #CRM

    Accepts the following message:

    User Payer Account Updated
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{userPayerId}.userPayer.account.deleted

    When user payer is updated.

    Operation ID{API_ACCESS_KEY}.*.userPayer.account.deleted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    userPayerId
    required
    integer
    format: int32

    User payer ID. Every payer has a unique ID.

    • #CRM

    Accepts the following message:

    User Payer Account Deleted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.userRegistration.pending

    Once customer triggered registration which requres further confirmation by operator. This will be send only in the case of subscribers.

    Operation ID{API_ACCESS_KEY}.userRegistration.pending
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #CRM

    Accepts the following message:

    User Registration Pending
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.user.firstlogin

    When user logins into the system for the first time.

    Operation ID{API_ACCESS_KEY}.user.firstlogin
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #CRM

    Accepts the following message:

    User First Login
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.user.account.fundstopup

    When customer from Driver app or API executes on user or payer prepayment account.

    Operation ID{API_ACCESS_KEY}.user.account.fundstopup
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #CRM

    Accepts the following message:

    User Account Funds Topup
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.user.account.manualbalance

    When operator executes manual balance on user account. Normally executed as a part of dispute process for postpayers or prepayers.

    Operation ID{API_ACCESS_KEY}.user.account.manualbalance
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #CRM

    Accepts the following message:

    User Account Manual Balance
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.user.account.empty

    After session user billing is successfully executed and system detects that user's account is almost empty.

    Operation ID{API_ACCESS_KEY}.*.user.account.empty
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #CRM

    Accepts the following message:

    User Prepayment Account Empty
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.user.paymentCard.revalidationRequired

    When Ocean payment system discovers that payment card which is used in MIT (merchant initiated payment) needs revalidation. Customer gets notified about it.

    Operation ID{API_ACCESS_KEY}.user.paymentCard.revalidationRequired
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #CRM

    Accepts the following message:

    User Payment Card Requires Revalidation
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.user.paymentCard.validated

    When payment card is validated.

    Operation ID{API_ACCESS_KEY}.user.paymentCard.validated
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    • #CRM

    Accepts the following message:

    User Payment Card Validated
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.{chargePointId}.chargepoint.inserted

    When operator or API inserts new charger.

    Operation ID{API_ACCESS_KEY}.*.*.chargepoint.inserted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    chargePointId
    required
    integer
    format: int32

    Charge point ID. Every Charge point has a unique ID.

    • #Asset management

    Accepts the following message:

    Charge Point Inserted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.{chargePointId}.chargepoint.updated

    When operator or API inserts new charger.

    Operation ID{API_ACCESS_KEY}.*.*.chargepoint.updated
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    chargePointId
    required
    integer
    format: int32

    Charge point ID. Every Charge point has a unique ID.

    • #Asset management

    Accepts the following message:

    Charge Point Updated
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.{chargePointId}.chargepoint.deleted

    When operator or API inserts new charger.

    Operation ID{API_ACCESS_KEY}.*.*.chargepoint.deleted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    chargePointId
    required
    integer
    format: int32

    Charge point ID. Every Charge point has a unique ID.

    • #Asset management

    Accepts the following message:

    Charge Point Deleted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.location.inserted

    When operator or API inserts new location.

    Operation ID{API_ACCESS_KEY}.*.location.inserted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Asset management

    Accepts the following message:

    Location Inserted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.location.updated

    When operator or API updates data of the existing location.

    Operation ID{API_ACCESS_KEY}.*.location.updated
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Asset management

    Accepts the following message:

    Location Updated
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.location.deleted

    When operator or API deletes existing location.

    Operation ID{API_ACCESS_KEY}.*.location.deleted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Asset management

    Accepts the following message:

    Location Deleted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.{locationClusterId}.locationCluster.inserted

    When operator or API inserts new location cluster.

    Operation ID{API_ACCESS_KEY}.*.*.locationCluster.inserted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    locationClusterId
    required
    integer
    format: int32

    Location cluster ID. Every location cluster has a unique ID.

    • #Asset management

    Accepts the following message:

    Location Cluster Inserted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.{locationClusterId}.locationCluster.updated

    When operator or API updates data of the existing location cluster.

    Operation ID{API_ACCESS_KEY}.*.*.locationCluster.updated
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    locationClusterId
    required
    integer
    format: int32

    Location cluster ID. Every location cluster has a unique ID.

    • #Asset management

    Accepts the following message:

    Location Cluster Updated
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.{locationClusterId}.locationCluster.deleted

    When operator or API deletes existing location cluster.

    Operation ID{API_ACCESS_KEY}.*.*.locationCluster.deleted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    locationClusterId
    required
    integer
    format: int32

    Location cluster ID. Every location cluster has a unique ID.

    • #Asset management

    Accepts the following message:

    Location Cluster Deleted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{loadAreaId}.loadArea.inserted

    When operator or API inserts new load area.

    Operation ID{API_ACCESS_KEY}.*.loadArea.inserted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    loadAreaId
    required
    integer
    format: int32

    Load area ID. Every load area has a unique ID.

    • #Asset management

    Accepts the following message:

    Load Area Inserted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{loadAreaId}.loadArea.updated

    When operator or API updates data of the existing load area.

    Operation ID{API_ACCESS_KEY}.*.loadArea.updated
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    loadAreaId
    required
    integer
    format: int32

    Load area ID. Every load area has a unique ID.

    • #Asset management

    Accepts the following message:

    Load Area Updated
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{loadAreaId}.loadArea.deleted

    When operator or API deletes data of the existing load area.

    Operation ID{API_ACCESS_KEY}.*.loadArea.deleted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    loadAreaId
    required
    integer
    format: int32

    Load area ID. Every load area has a unique ID.

    • #Asset management

    Accepts the following message:

    Load Area Deleted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.chargepoint.subcpo.newrequest

    When Sub CPO operator requests anew charge point.

    Operation ID{API_ACCESS_KEY}.*.chargepoint.subcpo.newrequest
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Asset management

    Accepts the following message:

    New Charge Point Request By Sub CPO
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.location.subcpo.inserted

    When Sub CPO operator inserts a new location.

    Operation ID{API_ACCESS_KEY}.*.location.subcpo.inserted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Asset management

    Accepts the following message:

    New Location Sub CPO Inserted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.tariff.subcpo.accepted

    When operator checks/edit and accepts proposed tariff from Sub CPO.

    Operation ID{API_ACCESS_KEY}.*.tariff.subcpo.accepted
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Tariff

    Accepts the following message:

    Tariff Sub CPO Accepted
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.tariff.subcpo.denied

    When operator checks/edit and denies proposed tariff from Sub CPO.

    Operation ID{API_ACCESS_KEY}.*.tariff.subcpo.denied
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Tariff

    Accepts the following message:

    Tariff Sub CPO Denied
    object
    object

    Examples

  • SUB {API_ACCESS_KEY}.{locationId}.tariff.subcpo.pending

    When Sub CPO operator posts new tariff that needs to be reviewed by CPO price administrator.

    Operation ID{API_ACCESS_KEY}.*.tariff.subcpo.pending
    object
    API_ACCESS_KEY
    required
    string

    API Access key. This can be configured in the Ocean's operator portal.

    locationId
    required
    integer
    format: int32

    Location ID. Every location has a unique ID.

    • #Tariff

    Accepts the following message:

    Tariff Sub CPO Pending
    object
    object

    Examples