Standard OData queries return new and updated records, but do not indicate which records have been deleted. If you are synchronising platform data into an external system, your downstream store may retain records that no longer exist in the platform.
The deleted records endpoint allows you to retrieve the GUIDs of records deleted from a specific object within a defined time window, so they can be removed from your external system.
How It Works
The endpoint queries the EU_DELETED_RECORDS object. Each result includes the GUID of the deleted record, the object it belonged to, and the deletion timestamp. Filters are mandatory — the endpoint returns nothing without them.
Prerequisites
Before using the deleted records endpoint:
The source object must have auditing enabled.
The source object must be published on an OData Resource.
The
EU_DELETED_RECORDSobject must also be published on a Resource.The calling user or service account must have appropriate role access, or a valid mTLS certificate.
Your downstream system must already store record GUIDs in order to match and remove deleted records.
Note: Virtual Objects and Summary Objects are not supported by this endpoint.
Querying via URL
Use the following URL pattern for mTLS (certificate-based) access:
https://api.{region}.{domain}/odata-cert/resource.svc/{instance-id}/EU_DELETED_RECORDS?$filter=OBJECT_NAME eq 'CONTRACT' and DELETED_DATE ge datetime'2024-08-01T00:00:00' and DELETED_DATE le datetime'2024-08-01T23:59:59'
Querying via Excel
In Excel, go to Data \> Get Data \> From OData Feed and enter the endpoint URL for your instance, see below URL pattern:
https://api.energysys.com/v2/<instance-id>/EU_DELETED_RECORDS
Select Organisational account authentication. Once connected, apply filters in Power Query using Advanced filter mode. Filter on OBJECT_NAME (equals the object's system name) and DELETED_DATE (a date range with both a lower and upper bound). Records only appear once filters are applied.
Filter Parameters
Parameter | Type | Description | Required |
| String | System name of the object | Yes |
| DateTime | Deletion timestamp — must supply a date range | Yes |
Supported operators: eq, ge, le.
Response Fields
Each matching record returns: GUID (unique identifier of the deleted record), IDENTIFIER (object name and GUID combined), OBJECT_NAME, and DELETED_DATE.
Typical Integration Pattern
Pull new and modified records using standard OData with modification date filtering.
Pull deleted record GUIDs using the deleted records endpoint.
Remove matching GUIDs from the downstream system.
This avoids full dataset refreshes and keeps the integration efficient.
