Pular para o conteúdo principal

Charge point

O id do ponto de recarga é o mesmo em todas as rotas deste recurso: cadastro, detalhe, status e coordenadas.

Cadastro e cache​

GET /b2b/charge-point

Retorna informações relativamente estáticas dos pontos de recarga visíveis para a api-key, para cadastro e para o cache do cliente.

A lista não é paginada. A resposta traz todos os pontos visíveis para a api-key.

Sucesso: 200.

[
{
"id": "station-789",
"name": "Paulista",
"accessRestriction": {
"active": true,
"description": "Estacionamento do shopping",
"establishmentType": "MALL",
"openingHours": "Todos os dias, 10h às 22h"
},
"address": {
"city": "São Paulo",
"country": "BR",
"neighborhood": "Bela Vista",
"postalCode": "01310-100",
"state": "SP",
"street": "Avenida Paulista",
"streetNumber": "1000"
},
"coordinates": { "latitude": -23.5614, "longitude": -46.6558 },
"connectors": [
{
"id": 1,
"type": "TYPE2",
"maxPower": 22000,
"maxAmperage": 32,
"maxVoltage": 400,
"updatedAt": "2026-01-15T12:00:00.000Z"
}
],
"cpo": { "id": "cpo-1", "rootParentOrganizationId": "org-root" },
"description": "Estação coberta",
"images": ["https://example.com/station.jpg"],
"qrCode": "VB-789",
"support": {
"name": "Suporte VoltBras",
"contacts": [
{
"id": "contact-1",
"title": "WhatsApp",
"subtitle": "Atendimento",
"type": "WHATSAPP",
"actionParameter": "+5511999999999"
}
]
},
"unlockMethods": ["Remote", "ChargingCard"],
"unlockTimeout": 120,
"visibility": "PUBLIC",
"weeklyOperatingHours": [
{
"dayOfWeek": 1,
"openingTime": "08:00",
"closingTime": "20:00",
"isClosed": false
}
],
"openingHours": "Segunda a sexta, 8h às 20h"
}
]

address, coordinates, accessRestriction e support vêm null quando o ponto não tem o dado. connectors e images vêm [].

O id do conector é numérico e costuma ser 1, 2 ou 3. maxPower está em watt, maxAmperage em ampere e maxVoltage em volt.

unlockTimeout é o tempo, em segundos, para conectar o cabo depois do desbloqueio.

unlockMethods aceita Remote, ChargingCard, Open e AutoCharge.

visibility é PUBLIC ou PRIVATE.

weeklyOperatingHours.dayOfWeek vai de 0 (domingo) a 6 (sábado). openingTime e closingTime usam HH:mm.

support.contacts[].type é PHONE, WHATSAPP, SITE, LINKEDIN ou INSTAGRAM.

Consulta para iniciar a recarga​

GET /b2b/charge-point/{id}

Retorna o estado atual de um ponto de recarga, com o status dos conectores e o preço, para a escolha de onde iniciar uma recarga.

Sucesso: 200. Se o id não existir para esta api-key, a resposta é 404.

{
"id": "station-789",
"name": "Paulista",
"status": "AVAILABLE",
"address": {
"city": "São Paulo",
"country": "BR",
"neighborhood": "Bela Vista",
"postalCode": "01310-100",
"state": "SP",
"street": "Avenida Paulista",
"streetNumber": "1000"
},
"connectors": [
{
"id": 1,
"type": "TYPE2",
"status": "AVAILABLE",
"maxPower": 22000,
"pricing": [
{
"method": "PER_ENERGY",
"chargeFee": 2.5,
"costPerKwh": 1.89,
"costPerMinute": null,
"enabled": true,
"idleFee": 0.5,
"idleToleranceTime": 15,
"membershipId": null,
"emspId": "emsp-456"
},
{
"method": "PER_ENERGY",
"chargeFee": 0,
"costPerKwh": 1.2,
"costPerMinute": null,
"enabled": true,
"idleFee": null,
"idleToleranceTime": null,
"membershipId": "membership-1",
"emspId": "emsp-456"
}
]
}
],
"support": {
"name": "Suporte VoltBras",
"contacts": [
{
"id": "contact-1",
"title": "WhatsApp",
"subtitle": "Atendimento",
"type": "WHATSAPP",
"actionParameter": "+5511999999999"
}
]
},
"description": "Estação coberta",
"unlockMethods": ["Remote"]
}

pricing é a lista de preços do conector. O item com membershipId nulo é o preço padrão. Os demais são o preço de uma membership. method diz como ler o valor:

  • PER_ENERGY usa costPerKwh. costPerMinute vem null.
  • PER_TIME usa costPerMinute. costPerKwh vem null.

Os valores de preço estão em unidades de moeda, não em centavos: 1.89 é 1,89. chargeFee é a taxa de início. idleFee é a taxa de ociosidade. idleToleranceTime é a tolerância, em minutos. enabled indica se aquele preço pode ser usado.

O status do ponto é um de: AVAILABLE, CHARGING, INOPERATIVE, PLANNED, RESERVED, UNKNOWN, MAINTENANCE.

O status do conector é um de: AVAILABLE, PREPARING, CHARGING, FINISHING, INOPERATIVE, RESERVED, UNKNOWN, MAINTENANCE.

Erros​

As duas leituras acima não recebem corpo nem query string. O header api-key é obrigatório, como no restante da API.

HTTPQuando
200a lista, ou o ponto pedido
404GET /b2b/charge-point/{id} e o ponto não existe para esta api-key
500falha ao obter os dados. api-key ausente ou recusada também cai aqui, como nas outras leituras

Mapa​

GET /b2b/charge-point/status devolve o id e o status operacional de cada charge point.

[{ "id": "station-789", "status": "AVAILABLE" }]

GET /b2b/charge-point/coordinates devolve o id e a posição de cada charge point. coordinates traz latitude e longitude em graus decimais. O id é o mesmo das duas listas: com ele o mapa posiciona o charge point e mostra o status.

[
{
"id": "station-789",
"coordinates": { "latitude": -23.5614, "longitude": -46.6558 }
}
]

Sucesso: 200. Nenhuma das duas recebe filtro.

Simulador​

POST /b2b/charge-point/command enfileira um comando no simulador de estação. Serve para exercício de integração contra uma estação simulada. Uma recarga real não passa por esta rota.

Campos obrigatórios: stationId e action. connectorId é opcional.

action aceita:

  • Reset
  • RestoreConnectorPower
  • SetConnectorPowerToZero
  • StopEnergyTransfer
  • UnplugConnector

Sucesso: 201 com actionId, o id da ação enfileirada.