get

List all assets

This endpoint retrieves a list of all assets available to the authenticated user.

limitstring

The maximum number of assets to return (default 20, maximum 100)

Pattern
^[0-9][0-9]?$|^100$
startingAfterstring

The ID of the last asset in the previous page of results. Results will start after this asset

chargingStationMakestring

The make of the charging station to filter the results

chargingStationModelstring

The model of the charging station to filter the results

firmwareVersionstring

The firmware version of the charging station to filter the results

assetGroupsstring

A comma-separated list of asset group IDs to filter the results

Responses

Response examples

A list of assets

{
  "data": {
    "hasMore": true,
    "items": [
      {
        "id": "string",
        "type": "chargingStation",
        "network": {
          "id": "string"
        },
        "sitePartners": [
          {
            "id": "string"
          }
        ],
        "assetGroup": {
          "id": "string"
        },
        "createdAt": "2023-06-07T17:32:28Z",
        "updatedAt": "2023-06-07T17:32:28Z",
        "chargingStation": {
          "serialNumber": "string",
          "name": "string",
          "rate": "string",
          "status": "PLANNED",
          "connectors": [
            {
              "id": 123.0,
              "status": "Available",
              "rawStatus": "string",
              "isActive": true,
              "connectionType": "CHADEMO",
              "format": "CABLE",
              "maxAmperage": 123.0,
              "maxVoltage": 123.0,
              "updatedAt": "2023-06-07T17:32:28Z"
            }
          ],
          "localAuthorization": true,
          "geoLocation": {
            "longitude": 123.0,
            "latitude": 123.0
          },
          "powerType": "AC_1_PHASE",
          "protocol": "OCPP_1_6",
          "images": [
            {
              "url": "string",
              "thumbnail": "string",
              "category": "string",
              "imgType": "string"
            }
          ],
          "manufacturingInfo": {
            "chargePointVendor": "string",
            "chargePointModel": "string",
            "chargePointSerialNumber": "string",
            "chargeBoxSerialNumber": "string",
            "firwareVersion": "string",
            "imsi": "string",
            "meterType": "string",
            "meterSerialNumber": "string"
          },
          "sortOrder": 123.0,
          "directionHint": "string",
          "simInfo": {
            "iccid": "string",
            "fleet": "string",
            "createdAt": "2023-06-07T17:32:28Z"
          },
          "supportsSimultaneousCharging": true,
          "paymentTerminal": {
            "serialNumber": "string",
            "provider": "PAYTER",
            "integrationType": "CLOUD",
            "authorizationIdTag": "string",
            "preAuthAmount": 123.0
          },
          "shortCode": "string"
        },
        "latestHealthcheck": {
          "timestamp": "string"
        },
        "assetLifecycles": {
          "timestamp": "string",
          "eventType": "CONNECTED"
        }
      }
    ]
  }
}
post

Create a new asset

This endpoint creates a new asset

typestring

required

The type of asset to be created

Enum
  • chargingStation
networkstring

required

The network associated with the asset

assetGroupstring

required

The asset-group to which the asset belongs

chargingStationobject (CreateChargingStationParams)

Details specific to the charging station type of asset

serialNumberstring

required

The identifier the station will use when connecting to the central system. It is USUALLY the serial number of the hardware unit itself, but it could be different.

namestring

required

Max Length
16
ratestring

required

statusstring

required

Describes the status of a charging station. PLANNED means that the station is waiting to be installed. MAINTENANCE means that the station is not available for charging. ACTIVE means that the station is available for charging. INACTIVE essentially means the station is offline and likely to be removed

Default
"PLANNED"
Enum
  • PLANNED
  • MAINTENANCE
  • ACTIVE
  • INACTIVE
connectorsarray

required

localAuthorizationboolean

required

Set to true if the station should authenticate itself when starting a charge session

Default
false
geoLocationobject

The geographical location of the station. If this is not provided we will inherit the values from the parent location.

powerTypestring

required

Enum
  • AC_1_PHASE
  • AC_3_PHASE
  • DC
protocolstring

The communication protocol used by the station. Currently only OCPP 1.6 is supported

Enum
  • OCPP_1_6
imagesarray
sortOrdernumber

This is used to order stations when displayed in a list

directionHintstring
simInfoobject

If the iccid is a managed sim then the simGroup is required

supportsSimultaneousChargingboolean

Set to true if the station supports charging on multiple cables at the same time

paymentTerminalobject

If the integrationType is HARDWARE then an authorizationIdTag will be present

securityProfileobject

If the profile is PASSWORD and a password is not provided we will configure the station in the background. If a password is provided we will assume the station is already configured with that password

shortCodestring

A short string to more easily identify the station

Responses

Request examples

{
  "type": "chargingStation",
  "network": "string",
  "assetGroup": "string",
  "chargingStation": {
    "serialNumber": "string",
    "name": "string",
    "rate": "string",
    "status": "PLANNED",
    "connectors": [
      {
        "id": 123.0,
        "isActive": true,
        "connectionType": "CHADEMO",
        "format": "CABLE",
        "maxAmperage": 123.0,
        "maxVoltage": 123.0
      }
    ],
    "localAuthorization": true,
    "geoLocation": {
      "longitude": 123.0,
      "latitude": 123.0
    },
    "powerType": "AC_1_PHASE",
    "protocol": "OCPP_1_6",
    "images": [
      {
        "url": "string",
        "thumbnail": "string",
        "category": "string",
        "imgType": "string"
      }
    ],
    "sortOrder": 123.0,
    "directionHint": "string",
    "simInfo": {
      "iccid": "string",
      "simGroup": "string"
    },
    "supportsSimultaneousCharging": true,
    "paymentTerminal": {
      "serialNumber": "string",
      "provider": "PAYTER",
      "integrationType": "CLOUD",
      "authorizationIdTag": "string",
      "preAuthAmount": 123.0
    },
    "securityProfile": {
      "profile": "PASSWORD",
      "password": "string"
    },
    "shortCode": "string"
  }
}

Response examples

Success

{
  "data": {
    "id": "string",
    "type": "chargingStation",
    "network": {
      "id": "string"
    },
    "sitePartners": [
      {
        "id": "string"
      }
    ],
    "assetGroup": {
      "id": "string"
    },
    "createdAt": "2023-06-07T17:32:28Z",
    "updatedAt": "2023-06-07T17:32:28Z",
    "chargingStation": {
      "authMethods": {
        "rfid": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        },
        "mobileApp": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        },
        "autoCharge": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        },
        "freeVend": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        },
        "paymentTerminal": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        }
      },
      "serialNumber": "string",
      "name": "string",
      "rate": "string",
      "status": "PLANNED",
      "connectors": [
        {
          "id": 123.0,
          "isActive": true,
          "connectionType": "CHADEMO",
          "format": "CABLE",
          "maxAmperage": 123.0,
          "maxVoltage": 123.0,
          "updatedAt": "2023-06-07T17:32:28Z"
        }
      ],
      "localAuthorization": true,
      "geoLocation": {
        "longitude": 123.0,
        "latitude": 123.0
      },
      "powerType": "AC_1_PHASE",
      "protocol": "OCPP_1_6",
      "images": [
        {
          "url": "string",
          "thumbnail": "string",
          "category": "string",
          "imgType": "string"
        }
      ],
      "manufacturingInfo": {
        "chargePointVendor": "string",
        "chargePointModel": "string",
        "chargePointSerialNumber": "string",
        "chargeBoxSerialNumber": "string",
        "firwareVersion": "string",
        "imsi": "string",
        "meterType": "string",
        "meterSerialNumber": "string"
      },
      "sortOrder": 123.0,
      "directionHint": "string",
      "simInfo": {
        "iccid": "string",
        "fleet": "string",
        "createdAt": "2023-06-07T17:32:28Z"
      },
      "supportsSimultaneousCharging": true,
      "paymentTerminal": {
        "serialNumber": "string",
        "provider": "string",
        "integrationType": "CLOUD",
        "authorizationIdTag": "string",
        "preAuthAmount": 123.0
      },
      "shortCode": "string",
      "license": {
        "externalId": "string",
        "expirationDate": "2023-06-07T17:32:28Z",
        "assignedAt": "2023-06-07T17:32:28Z"
      }
    }
  }
}
get

Get an asset by id

This endpoint retrieve an asset by the provided id

assetIdstring

required

The id of the asset to retrieve

Responses

Response examples

A list of assets

{
  "data": {
    "id": "string",
    "type": "chargingStation",
    "network": {
      "id": "string"
    },
    "sitePartners": [
      {
        "id": "string"
      }
    ],
    "assetGroup": {
      "id": "string"
    },
    "createdAt": "2023-06-07T17:32:28Z",
    "updatedAt": "2023-06-07T17:32:28Z",
    "chargingStation": {
      "serialNumber": "string",
      "name": "string",
      "rate": "string",
      "status": "PLANNED",
      "connectors": [
        {
          "id": 123.0,
          "status": "Available",
          "rawStatus": "string",
          "isActive": true,
          "connectionType": "CHADEMO",
          "format": "CABLE",
          "maxAmperage": 123.0,
          "maxVoltage": 123.0,
          "updatedAt": "2023-06-07T17:32:28Z"
        }
      ],
      "localAuthorization": true,
      "geoLocation": {
        "longitude": 123.0,
        "latitude": 123.0
      },
      "powerType": "AC_1_PHASE",
      "protocol": "OCPP_1_6",
      "images": [
        {
          "url": "string",
          "thumbnail": "string",
          "category": "string",
          "imgType": "string"
        }
      ],
      "manufacturingInfo": {
        "chargePointVendor": "string",
        "chargePointModel": "string",
        "chargePointSerialNumber": "string",
        "chargeBoxSerialNumber": "string",
        "firwareVersion": "string",
        "imsi": "string",
        "meterType": "string",
        "meterSerialNumber": "string"
      },
      "sortOrder": 123.0,
      "directionHint": "string",
      "simInfo": {
        "iccid": "string",
        "fleet": "string",
        "createdAt": "2023-06-07T17:32:28Z"
      },
      "supportsSimultaneousCharging": true,
      "paymentTerminal": {
        "serialNumber": "string",
        "provider": "PAYTER",
        "integrationType": "CLOUD",
        "authorizationIdTag": "string",
        "preAuthAmount": 123.0
      },
      "shortCode": "string"
    },
    "latestHealthcheck": {
      "timestamp": "string"
    },
    "assetLifecycles": {
      "timestamp": "string",
      "eventType": "CONNECTED"
    }
  }
}
patch

Update an asset

This endpoint updates an existing asset by its ID.

chargingStationobject (UpdateChargingStationParams)
authMethodsobject

The methods of authentication that are enabled for the station. Cannot be an empty object

serialNumberstring

The identifier the station will use when connecting to the central system. It is USUALLY the serial number of the hardware unit itself, but it could be different.

namestring
Max Length
16
ratestring
statusstring

Describes the status of a charging station. PLANNED means that the station is waiting to be installed. MAINTENANCE means that the station is not available for charging. ACTIVE means that the station is available for charging. INACTIVE essentially means the station is offline and likely to be removed

Default
"PLANNED"
Enum
  • PLANNED
  • MAINTENANCE
  • ACTIVE
  • INACTIVE
connectorsarray
localAuthorizationboolean

Set to true if the station should authenticate itself when starting a charge session

geoLocationobject
powerTypestring
Enum
  • AC_1_PHASE
  • AC_3_PHASE
  • DC
protocolstring

The communication protocol used by the station. Currently only OCPP 1.6 is supported

Enum
  • OCPP_1_6
imagesarray
sortOrdernumber or null

This is used to order stations when displayed in a list

directionHintstring or null
simInfoobject

If the iccid is a managed sim then the simGroup is required

supportsSimultaneousChargingboolean or null

Set to true if the station supports charging on multiple cables at the same time

paymentTerminalobject

If the integrationType is HARDWARE then an authorizationIdTag will be present

shortCodestring or null

A short string to more easily identify the station

Responses

Request examples

{
  "chargingStation": {
    "authMethods": {
      "rfid": {
        "enabled": true
      },
      "mobileApp": {
        "enabled": true
      },
      "autoCharge": {
        "enabled": true
      },
      "freeVend": {
        "enabled": true
      },
      "paymentTerminal": {
        "enabled": true
      }
    },
    "serialNumber": "string",
    "name": "string",
    "rate": "string",
    "status": "PLANNED",
    "connectors": [
      {
        "id": 123.0,
        "isActive": true,
        "connectionType": "CHADEMO",
        "format": "CABLE",
        "maxAmperage": 123.0,
        "maxVoltage": 123.0
      }
    ],
    "localAuthorization": true,
    "geoLocation": {
      "longitude": 123.0,
      "latitude": 123.0
    },
    "powerType": "AC_1_PHASE",
    "protocol": "OCPP_1_6",
    "images": [
      {
        "url": "string",
        "thumbnail": "string",
        "category": "string",
        "imgType": "string"
      }
    ],
    "sortOrder": 123.0,
    "directionHint": "string",
    "simInfo": {
      "iccid": "string",
      "simGroup": "string"
    },
    "supportsSimultaneousCharging": true,
    "paymentTerminal": {
      "serialNumber": "string",
      "provider": "PAYTER",
      "integrationType": "CLOUD",
      "authorizationIdTag": "string",
      "preAuthAmount": 123.0
    },
    "shortCode": "string"
  }
}

Response examples

Success. Returns the updated asset.

{
  "data": {
    "id": "string",
    "type": "chargingStation",
    "network": {
      "id": "string"
    },
    "sitePartners": [
      {
        "id": "string"
      }
    ],
    "assetGroup": {
      "id": "string"
    },
    "createdAt": "2023-06-07T17:32:28Z",
    "updatedAt": "2023-06-07T17:32:28Z",
    "chargingStation": {
      "authMethods": {
        "rfid": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        },
        "mobileApp": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        },
        "autoCharge": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        },
        "freeVend": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        },
        "paymentTerminal": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        }
      },
      "serialNumber": "string",
      "name": "string",
      "rate": "string",
      "status": "PLANNED",
      "connectors": [
        {
          "id": 123.0,
          "isActive": true,
          "connectionType": "CHADEMO",
          "format": "CABLE",
          "maxAmperage": 123.0,
          "maxVoltage": 123.0,
          "updatedAt": "2023-06-07T17:32:28Z"
        }
      ],
      "localAuthorization": true,
      "geoLocation": {
        "longitude": 123.0,
        "latitude": 123.0
      },
      "powerType": "AC_1_PHASE",
      "protocol": "OCPP_1_6",
      "images": [
        {
          "url": "string",
          "thumbnail": "string",
          "category": "string",
          "imgType": "string"
        }
      ],
      "manufacturingInfo": {
        "chargePointVendor": "string",
        "chargePointModel": "string",
        "chargePointSerialNumber": "string",
        "chargeBoxSerialNumber": "string",
        "firwareVersion": "string",
        "imsi": "string",
        "meterType": "string",
        "meterSerialNumber": "string"
      },
      "sortOrder": 123.0,
      "directionHint": "string",
      "simInfo": {
        "iccid": "string",
        "fleet": "string",
        "createdAt": "2023-06-07T17:32:28Z"
      },
      "supportsSimultaneousCharging": true,
      "paymentTerminal": {
        "serialNumber": "string",
        "provider": "string",
        "integrationType": "CLOUD",
        "authorizationIdTag": "string",
        "preAuthAmount": 123.0
      },
      "shortCode": "string",
      "license": {
        "externalId": "string",
        "expirationDate": "2023-06-07T17:32:28Z",
        "assignedAt": "2023-06-07T17:32:28Z"
      }
    }
  }
}
get

List all asset statuses

This endpoint retrieves a list of all assets statuses available to the authenticated user.

limitstring

The maximum number of asset statuses to return (default 20, maximum 100)

Pattern
^[0-9][0-9]?$|^100$
startingAfterstring

The ID of the last asset status in the previous page of results. Results will start after this asset status

Responses

Response examples

A list of asset statuses.

{
  "hasMore": true,
  "items": [
    {
      "type": "chargingStation",
      "network": {
        "id": "string"
      },
      "chargingStation": {
        "connection": {
          "id": "string",
          "action": "string"
        },
        "heartbeat": {
          "timestamp": "2023-06-07T17:32:28Z"
        },
        "connectorStatuses": [
          {
            "id": 123.0,
            "status": "string"
          }
        ]
      },
      "createdAt": "2023-06-07T17:32:28Z",
      "updatedAt": "2023-06-07T17:32:28Z"
    }
  ]
}
post

Update session limits for assets in an asset group

This endpoint updates the session limits for a list of assets in an asset group.

assetIdsarray

required

sessionLimitsobject

required

energyLimitKwhnumber
durationLimitMinsnumber

Responses

Request examples

{
  "assetIds": [
    "string"
  ],
  "sessionLimits": {
    "energyLimitKwh": 123.0,
    "durationLimitMins": 123.0
  }
}

Response examples

Success. Returns a message indicating the session limits have been updated.

{
  "message": "Asset with ids: testAssetId session limits updated successfully and session limits removed for remaining assets in assetGroup:testAssetGroupId"
}
post

Remove password requirement for an asset

Sets the central system to not check for a password when an asset connects.
WARNING! This action is potentially dangerous and irreversible!

assetIdstring

required

The ID of the asset to make insecure.

Responses

Response examples

Success. Return station security profile if applicable.

{
  "id": "string",
  "profile": "INSECURE",
  "createdAt": "2023-06-07T17:32:28Z",
  "updatedAt": "2023-06-07T17:32:28Z"
}
patch

Update an asset license

This endpoint assigns/updates the license of an existing asset by its ID. If the license is set to null, the asset will be unlicensed.

licenseobject
externalIdstring

required

expirationDatestring

required

Format
date-time
assignedAtstring

required

Format
date-time

Responses

Request examples

{
  "license": {
    "externalId": "string",
    "expirationDate": "2023-06-07T17:32:28Z",
    "assignedAt": "2023-06-07T17:32:28Z"
  }
}

Response examples

Success. Returns the asset updated with the license.

{
  "data": {
    "id": "string",
    "type": "chargingStation",
    "network": {
      "id": "string"
    },
    "sitePartners": [
      {
        "id": "string"
      }
    ],
    "assetGroup": {
      "id": "string"
    },
    "createdAt": "2023-06-07T17:32:28Z",
    "updatedAt": "2023-06-07T17:32:28Z",
    "chargingStation": {
      "authMethods": {
        "rfid": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        },
        "mobileApp": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        },
        "autoCharge": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        },
        "freeVend": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        },
        "paymentTerminal": {
          "enabled": true,
          "updatedAt": "2023-06-07T17:32:28Z"
        }
      },
      "serialNumber": "string",
      "name": "string",
      "rate": "string",
      "status": "PLANNED",
      "connectors": [
        {
          "id": 123.0,
          "isActive": true,
          "connectionType": "CHADEMO",
          "format": "CABLE",
          "maxAmperage": 123.0,
          "maxVoltage": 123.0,
          "updatedAt": "2023-06-07T17:32:28Z"
        }
      ],
      "localAuthorization": true,
      "geoLocation": {
        "longitude": 123.0,
        "latitude": 123.0
      },
      "powerType": "AC_1_PHASE",
      "protocol": "OCPP_1_6",
      "images": [
        {
          "url": "string",
          "thumbnail": "string",
          "category": "string",
          "imgType": "string"
        }
      ],
      "manufacturingInfo": {
        "chargePointVendor": "string",
        "chargePointModel": "string",
        "chargePointSerialNumber": "string",
        "chargeBoxSerialNumber": "string",
        "firwareVersion": "string",
        "imsi": "string",
        "meterType": "string",
        "meterSerialNumber": "string"
      },
      "sortOrder": 123.0,
      "directionHint": "string",
      "simInfo": {
        "iccid": "string",
        "fleet": "string",
        "createdAt": "2023-06-07T17:32:28Z"
      },
      "supportsSimultaneousCharging": true,
      "paymentTerminal": {
        "serialNumber": "string",
        "provider": "string",
        "integrationType": "CLOUD",
        "authorizationIdTag": "string",
        "preAuthAmount": 123.0
      },
      "shortCode": "string",
      "license": {
        "externalId": "string",
        "expirationDate": "2023-06-07T17:32:28Z",
        "assignedAt": "2023-06-07T17:32:28Z"
      }
    }
  }
}
post

Send an ocpp command to an asset (Deprecated)

This endpoint saves and emits a new ocpp command to the station. It then waits for a response for a maximum of 25 seconds and returns it. If the status of the response body is "Success", then the "confirmation" field will be present. The "confirmation.payload" contains the raw response from the station. If the status is not "Success", then the "error" field will be present containing details of what the error was.
INFO! This route is deprecated. We now recommend using the Inject OCPP Raw Request endpoint instead.
WARNING! This action is potentially dangerous and irreversible!

actionstring

required

The type of OCPP action to be executed

Enum
  • BootNotification
  • Heartbeat
  • MeterValues
  • StatusNotification
  • Authorize
  • StartTransaction
  • StopTransaction
  • DataTransfer
  • DiagnosticsStatusNotification
  • FirmwareStatusNotification
  • SignCertificate
  • GetConfiguration
  • ChangeConfiguration
  • RemoteStartTransaction
  • RemoteStopTransaction
  • Reset
  • UnlockConnector
  • UpdateFirmware
payloadstring

required

JSON string of the ocpp payload based on the action and protocol

protocolstring

required

The OCPP protocol version

Enum
  • OCPP_1_6

Responses

Request examples

{
  "action": "BootNotification",
  "payload": "string",
  "protocol": "OCPP_1_6"
}

Response examples

Success

{
  "data": {
    "id": "string",
    "assetId": "string",
    "networkId": "string",
    "action": "CancelReservation",
    "request": {
      "timestamp": "2023-06-07T17:32:28Z",
      "payload": {}
    },
    "status": "Success",
    "confirmation": {
      "timestamp": "2023-06-07T17:32:28Z",
      "payload": {}
    },
    "error": {
      "reason": "string",
      "timestamp": "2023-06-07T17:32:28Z"
    },
    "protocol": "OCPP_1_6"
  }
}
post

Authenticate an asset using password authentication.

Authenticates an asset using password authentication. If the asset is not configured to use password authentication, the password will be ignored. If the asset has an expired software license, the authentication request will be rejected.

idstring

required

The id of the asset that is authenticating

passwordstring

Must be provided if the profile is PASSWORD. If the profile is INSECURE then it is optional and will be ignored

Responses

Request examples

{
  "id": "string",
  "password": "string"
}

Response examples

Success. Return station security profile if applicable.

{
  "id": "string",
  "profile": "INSECURE",
  "createdAt": "2023-06-07T17:32:28Z",
  "updatedAt": "2023-06-07T17:32:28Z"
}
post

Change asset password.

Changes the password of the asset with the specified ID to the specified new password. If the password is not provided, generates a new random password. The new password will be configured with the asset internally.
WARNING! This action is potentially dangerous and irreversible!

idstring

required

Id of the asset that you want to change the password for

passwordstring

Responses

Request examples

{
  "id": "string",
  "password": "string"
}

Response examples

Success

Empty response

post

Verify pending asset password to complete password configuration.

Verifies the pending password of the asset with the specified ID to complete the password configuration. If the password is rejected, the asset will be configured with the previously configured password or set to insecure if no password was previously configured.

idstring

required

The id of the asset that you want to verify the password for

resultstring

required

The result of the password verification process

Enum
  • ACCEPTED
  • REJECTED

Responses

Request examples

{
  "id": "string",
  "result": "ACCEPTED"
}

Response examples

Success

Empty response

get

Get sim status of assets

This endpoint retrieves a list of all assets statuses available to the authenticated user.

assetIdstring

required

The ID of the asset.

Responses

Response examples

Successful response

{
  "data": {
    "status": "NEW"
  }
}

Was this page helpful?