HomeGuidesAPI ReferenceChangelog
Terms of Use
Changelog

3.277.0 release notes

  1. ⚠️ Breaking changes
    1. Changed ID tag and RFID tag validation to enforce a maximum of 255 characters: idLabel on POST /public-api/resources/id-tags/v2.0 and PATCH /public-api/resources/id-tags/v2.0/{idTag}, and rfidLabel and rfidTagUid on POST /public-api/resources/rfid-tags/v1.0 and PATCH /public-api/resources/rfid-tags/v1.0/{rfidTag}. Longer values are rejected.
    2. Removed offline from the accepted values for paymentMethod.bankTransferType on POST /public-api/resources/transactions/v1.0.
    3. Changed translated bank detail validation on POST /public-api/resources/partners/v2.0 and PATCH /public-api/resources/partners/v2.0/{partner} to limit each translation in bankDetails.translatedBankName, bankDetails.translatedBankAddress, and bankDetails.translatedBankAccountHolder to 255 characters when the corresponding bank detail field is enabled.
    4. Changed partner category name validation on POST /public-api/resources/partner-categories/v1.0 and PATCH /public-api/resources/partner-categories/v1.0/{partnerCategory} to reject four-byte Unicode characters, such as many emoji, in name[].translation.
    5. Changed roleId validation on POST /public-api/resources/partners/v2.0/{partner}/admins and PATCH /public-api/resources/partners/v2.0/{partner}/admins/{admin} to reject roles that the authenticated administrator cannot assign. These requests now return a validation error for roleId.
    6. Changed tariff type validation on PUT /public-api/resources/tariffs/v1.0/{tariff} and PATCH /public-api/resources/tariffs/v1.0/{tariff} to reject incompatible type changes when the tariff is referenced by a markup discount tariff.
    7. Changed bulk tariff group assignment on POST /public-api/actions/evse/v1.0/bulk-assign-tariff-group to require permission to maintain charge points and access to the selected tariff group. Requests matching no accessible EVSEs now return a validation error instead of an accepted response.
  2. ✨ New features
    1. Added POST /public-api/actions/churn-record/v1.0/record-exit to record an exit for a user, partner, or personal charge point using subject, exitedOn, and churnReason, with an optional externalReference. Added POST /public-api/actions/churn-record/v1.0/{churnRecord}/set-reason to set or replace the reason on an existing exit record.
    2. Added the optional churnReason request object to POST /public-api/actions/users/v1.0/{user}/change-status, POST /public-api/actions/users/v1.0/{user}/cancel-subscription, POST /public-api/actions/users/v1.0/{user}/terminate-subscription, and POST /public-api/actions/charge-point/v1.0/{chargePoint}/change-owner. Only operator and global tokens may supply it; it applies when disabling a user, cancelling or terminating a subscription, or removing or replacing a personal charge point's current owner, and accepts either reasonId or customReason with exitType.
    3. Added the optional userGroupIds array to POST /public-api/resources/partner-invites/v2.0 and PATCH /public-api/resources/partner-invites/v2.0/{partnerInvite}, and added it to responses from these endpoints and GET /public-api/resources/partner-invites/v2.0 and GET /public-api/resources/partner-invites/v2.0/{partnerInvite}. IDs must be distinct and belong to the invite's partner; changing groups on an accepted invite without changing its partner returns 409, and changing the partner requires clearing or replacing groups that belong to the previous partner.
    4. Added the optional revenueSharing.enableSessionFeeExpenses, revenueSharing.enableSessionFeeExpensesWithoutTax, and revenueSharing.handlingFeeBasis fields to POST /public-api/resources/partner-contracts/v1.0, PATCH /public-api/resources/partner-contracts/v1.0/{partnerContract}, and PUT /public-api/resources/partner-contracts/v1.0/{partnerContract}. These configure session fees as expenses for payment facilitation contracts and whether the handling fee uses amount_with_tax or amount_without_tax.
    5. Added revenueSharing.enableSessionFeeExpenses, revenueSharing.enableSessionFeeExpensesWithoutTax, and revenueSharing.handlingFeeBasis to partner contract responses from GET and POST /public-api/resources/partner-contracts/v1.0, GET, PATCH, and PUT /public-api/resources/partner-contracts/v1.0/{partnerContract}, and POST /public-api/actions/partner-contract/v1.0/{partnerContract}/disable, POST /public-api/actions/partner-contract/v1.0/{partnerContract}/reactivate, and POST /public-api/actions/partner-contract/v1.0/{partnerContract}/start-offboarding.
    6. Added paymentFacilitationFeePerKwhAc, paymentFacilitationFeePerKwhDc, paymentFacilitationFeePerSessionAc, paymentFacilitationFeePerSessionDc, and paymentFacilitationHandlingFee under subtotals.expenses in responses from GET /public-api/resources/partner-settlement-reports/v1.1 and GET /public-api/resources/partner-settlement-reports/v1.1/{partnerSettlementReport}.
    7. Added creditedByPartnerInvoiceId and creditedByPartnerInvoiceNumber to partner revenue responses from GET /public-api/resources/partner-revenues/v1.2 and POST /public-api/actions/partner-revenue/v1.0/{partnerRevenue}/set-custom-fields to identify the document crediting a revenue record.
    8. Added expectedCreditNoteCount to the response from POST /public-api/actions/partner-settlement-report/v1.0/{partnerSettlementReport}/issue-partner-invoice. Changed expectedDocumentCount to include credit notes as well as invoices.
    9. Added support for the session.billingStatus.changed notification event when subscribing with POST /public-api/notifications/v2.0, updating with PUT /public-api/notifications/v2.0/{notification}, or resending with POST /public-api/actions/notifications/v1.0/{notification}/resend. The event may also appear in notifications arrays returned by GET and POST /public-api/notifications/v1.0, GET and PUT /public-api/notifications/v1.0/{notification}, GET and POST /public-api/notifications/v2.0, and GET and PUT /public-api/notifications/v2.0/{notification}.
  3. 🔧 Improvements
    1. Expanded filter[origin] on GET /public-api/resources/partner-expenses/v1.0, GET /public-api/resources/partner-expenses/v1.1, and GET /public-api/resources/partner-expenses/v1.2 to accept payment-facilitation-fee-per-kwh-ac, payment-facilitation-fee-per-kwh-dc, payment-facilitation-fee-per-session-ac, payment-facilitation-fee-per-session-dc, and payment-facilitation-handling-fee. These values may also appear in the origin response field on the v1.1 and v1.2 listing endpoints and POST /public-api/actions/partner-expense/v1.0/{partnerExpense}/set-custom-fields.
    2. Expanded ocpiData.version in responses from GET /public-api/resources/cdrs/v2.0 and GET /public-api/resources/cdrs/v2.0/{cdr} to include 2.2.1 and 2.3.0. Changed incomplete CDR responses to omit unavailable ocpiData.authMethod, ocpiData.currency, ocpiData.totalCost, ocpiData.totalEnergy, and ocpiData.totalTime fields rather than fail to return the record.
    3. Changed listing responses to respect the authenticated administrator's access on GET /public-api/resources/authorizations/v2.0, GET /public-api/resources/authorizations/v2.1, GET /public-api/resources/electricity-rates/v1.0, GET /public-api/resources/electricity-rates/v2.0, GET /public-api/resources/security-events/v2.0, and GET /public-api/resources/security-events-log/v2.0. Records outside that access are no longer included.
    4. Changed GET /public-api/resources/partner-settlement-reports/v1.0/{partnerSettlementReport}/records and GET /public-api/resources/partner-settlement-reports/v1.1/{partnerSettlementReport}/records to return only payment records.
    5. Changed POST /public-api/resources/transactions/v1.0 to ignore invoiceDetails and invoiceRequired when invoicing is disabled for the authenticated ad hoc payment integration.
    6. Changed failureReason in transaction responses from GET and POST /public-api/resources/transactions/v1.0, GET and PATCH /public-api/resources/transactions/v1.0/{transaction}, and POST /public-api/actions/transaction/v1.0/{transaction}/set-custom-fields to return recognized payment failure codes without appended diagnostic details. Values containing sensitive technical diagnostics are replaced with payment_error.
    7. Changed partner revenue responses from GET /public-api/resources/partner-revenues/v1.0 to populate electricityCost, remainingRevenue, operatorShare, partnerShare, and totalAmount for revenue corrections, including signed totals for reversals. Changed totalAmount in responses from GET /public-api/resources/partner-expenses/v1.0 to use the expense amount for session fee expenses.
    8. Changed GET /public-api/resources/tariffs/v1.0 to validate filter[uuid] as a string and apply it consistently to exposed tariffs.
    9. Changed charge point request validation on POST /public-api/resources/charge-points/v2.0 and PATCH /public-api/resources/charge-points/v2.0/{chargePoint} to use the authenticated administrator's operator when creating a charge point and the charge point's existing operator when updating it.