Skip to content

Data API - v1 to v2

Migrating from v1.4.0 to v2.0.0

This document describes the changes introduced in version 2.0.0 of the Adatree Data API. It covers new endpoints, deprecated endpoints, schema changes, and the steps you need to take to migrate your integration.

GET /data/banking/accounts

Breaking Change

Removed required field


Breaking Change

Removed optional field


Breaking Change

Added required field


Change

Added optional field


GET /data/banking/products

Breaking Change

Removed required field


Breaking Change

Removed optional field


Breaking Change

Added required field


Change

Added optional field




Old (v1.4.0):

{
"name": "Term 12-24 Months",
"unitOfMeasure": "MONTH",
"minimumValue": 12,
"maximumValue": 24,
"minimumValueString": "12",
"maximumValueString": "24",
"applicabilityConditions": {
"rateApplicabilityType": "OTHER",
"additionalInfo": "..."
},
"applicabilityConditionList": [
{
"rateApplicabilityType": "OTHER",
"additionalInfo": "..."
}
]
}

New (v2.0.0):

{
"name": "Term 12-24 Months",
"unitOfMeasure": "MONTH",
"minimumValueString": "12",
"maximumValueString": "24",
"applicabilityConditionList": [
{
"rateApplicabilityType": "OTHER",
"additionalInfo": "..."
}
]
}

Removed required fields:

  • minimumValue (numeric, deprecated)

Removed optional fields:

  • maximumValue (numeric, deprecated)
  • applicabilityConditions (singular, deprecated)

Added required field:

  • minimumValueString (string, required — no longer optional)

Added optional fields:

  • maximumValueString (string)
  • applicabilityConditionList (array of conditions, replaces singular)

Action:

Consumers must:

  1. Change numeric parsing of tier bounds to string parsing
  2. Support tiers with non-numeric bounds (e.g., “1 - 2 months”)
  3. Update condition logic to iterate applicabilityConditionList (array) instead of reading singular applicabilityConditions

Old (v1.4.0):

{
"name": "Monthly Fee",
"feeType": "PERIODIC",
"amount": "15.00",
"balanceRate": null,
"transactionRate": null,
"accruedRate": null,
"accrualFrequency": null,
"feeMethodUType": "fixedAmount",
"fixedAmount": {
"amount": "15.00"
},
"currency": "AUD"
}

New (v2.0.0):

{
"name": "Monthly Fee",
"feeType": "PERIODIC",
"feeMethodUType": "fixedAmount",
"fixedAmount": {
"amount": "15.00"
},
"currency": "AUD"
}

Removed required fields:

  • amount (deprecated)
  • balanceRate (deprecated)
  • transactionRate (deprecated)
  • accruedRate (deprecated)
  • accrualFrequency (deprecated)

Added required field:

  • feeMethodUType (enum: fixedAmount, rateBased, variable)

New Structure

  • Discriminator feeMethodUType (now required) -> nested fixedAmount/rateBased/variable

Action:

Update JSON parsing to read from feeMethodUType + fixedAmount.amount / rateBased.rate / variable instead of flat fields.


Old (v1.4.0):

{
"description": "Loyalty Discount",
"discountType": "BALANCE",
"amount": "0.50",
"balanceRate": null,
"transactionRate": null,
"accruedRate": null,
"feeRate": null,
"discountMethodUType": "FIXED_AMOUNT",
"fixedAmount": {
"amount": "0.50"
}
}

New (v2.0.0):

{
"description": "Loyalty Discount",
"discountType": "BALANCE",
"discountMethodUType": "FIXED_AMOUNT",
"fixedAmount": {
"amount": "0.50"
}
}

Removed optional fields:

  • amount (deprecated)
  • balanceRate (deprecated)
  • transactionRate (deprecated)
  • accruedRate (deprecated)
  • feeRate (deprecated)

New Structure

  • Discriminator discountMethodUType -> nested fixedAmount/rateBased

Action:

Update JSON parsing to read from discountMethodUType + fixedAmount.amount / rateBased.rate instead of flat fields.


Added optional field:

  • instalments — instalment options available for lending products

Action:

Consumers can optionally parse; not required for core functionality. SDK regeneration captures this field; code updates optional.




5. Error Response Format – Generator-Level Change

Section titled “5. Error Response Format – Generator-Level Change”

The $ref to EnergyPlanContractV2 within EnergyPlanDetail is now wrapped in allOf (was a direct $ref in v1.4.0). Some OpenAPI generators handle these differently and may emit different type structures.

Action:

Regenerate SDKs; verify generated code compiles and type structures match expectations.


6. Removed Query Parameter Types (Non-Breaking)

Section titled “6. Removed Query Parameter Types (Non-Breaking)”

Parameter Types Removed:

  • QueryPlanIds
  • QueryPlanTypes
  • QueryPlanFuelTypes
  • QueryPlanEffective
  • QueryPlanUpdatedSince

Action:

No impact on live API; these parameter types were never referenced in active endpoints. Removal is spec cleanup only.