API release notes 3.0.2

Updated Endpoints & Enhancements

Enhancement to Alerts Endpoints

We’re pleased to announce several enhancements across Alerts endpoints to support additional details as part of our continued effort to help clients automate reminders, enforce operational standards, and reduce manual monitoring through targeted, real-time alerts.

Note: Alerts is a single endpoint that returns data based on the type and filters to that type.

/alerts?type=JobBudgetWarnings&JobBudgetWarningValue={float}

This endpoint returns the additional response fields

Example: /alerts?type=JobBudgetWarnings&JobBudgetWarningValue=0.2

Additional response fields:

  • ClientRef

  • ClientReft

  • ClientOfficeID

  • ClientTypeID

  • ClientType

  • JobPartnerID

  • JobManagerID

  • JobSupervisorID

  • JobSupervisor

  • JobSupervisorEmail

  • ClientPartnerID

  • ClientPartner

  • ClientPartnerEmail

  • ClientManagerID

  • ClientManager

  • ClientManagerEmail

  • ClientSupervisorID

  • ClientSupervisor

  • ClientSupervisorEmail

  • JobServiceLineID

  • JobServiceLine

  • JobServiceLineGroupID

  • JobServiceLineGroup

/ alerts?type=jobbudgetexceeded

This endpoint returns the additional response fields

Additional response fields:

  • ClientRef

  • ClientReft

  • ClientOfficeID

  • ClientTypeID

  • ClientType

  • JobPartnerID

  • JobManagerID

  • JobSupervisorID

  • JobSupervisor

  • JobSupervisorEmail

  • ClientPartnerID

  • ClientPartner

  • ClientPartnerEmail

  • ClientManagerID

  • ClientManager

  • ClientManagerEmail

  • ClientSupervisorID

  • ClientSupervisor

  • ClientSupervisorEmail

  • JobServiceLineID

  • JobServiceLine

  • JobServiceLineGroupID

  • JobServiceLineGroup

/alerts?type=clientsexceedinglockuplimit

This is a new Alert type that returns Clients Exceeding Lockup Limit

Response fields

  • ClientID

  • ClientName

  • LockupValue

  • Threshold

  • ClientOffice

  • Jurisdiction

/alerts?type=ptorequests

This is a new Alert type that returns all relevant data required to trigger PTO request alerts

Response fields

  • SelfServiceRequestID

  • JobID

  • RequestApprover

  • ApproverName

  • StaffID

  • StaffName

  • RequestDate

  • StartDate

  • EndDate

  • Comments

  • Status

  • TotalHours

/alerts?type=autoebills

This is a new Alert type that returns  invoice data used by the Auto E-Bill process so that clients can enable automatic sending of invoices once specific, configurable criteria are met  within IFM.

Response fields

  • ClientID

  • ClientRef

  • DraftBillID

  • InvoiceRef

  • FirstName

  • SearchName

  • ClientEmailAddresses

  • PreparedByStaffID

  • PreparedByForename

  • PreparedBySurname

  • PreparedByEmail

  • NextStageForStaffID

  • NextStageForForename

  • NextStageForSurname

  • NextStageForEmail

  • ContactRoleID

  • ContactRole

  • InvoiceTotal

  • DontPrintZeroBills

  • InvoiceStage

  • ClientEbillingFlag

Enhancements to Clients GET Endpoint

Note: Below endpoints return the records from tblAuditTrail table.

/clients?modified={timestamp}&{offset}&{limit}

  • Returns Clients with a timestamp after the provided timestamp. The offset and maximum number of records can be provided.

  • TimeStamp – Is a long parameter.

  • Offset - Is an optional parameter with default value 0(zero)

  • limit - Is an optional parameter with default value 50

/clients?modifiedsincedate={datetime}&{offset}&{limit}

  • Returns Clients with a timestamp after the provided timestamp. The offset and maximum number of records can be provided.

  • datetime – Is a datetime parameter. e.g. 2025-06-05:00:00:00

  • offset - Is an optional parameter with default value 0(zero)

  • limit - Is an optional parameter with default value 50

/clients?modifiedsincedays={days}&{offset}&{limit}

  • Returns Clients modified in the last x days. The offset and maximum number of records can be provided.

  • days– Is an integer parameter.

  • Offset - Is an optional parameter with default value 0(zero)

  • limit - Is an optional parameter with default value 50

/clients?startclientid={startclientid}&{offset}&{limit}

  • Returns Clients modified in the last x days. The offset and maximum number of records can be provided.

  • startclientid – Is an integer parameter.

  • limit - Is an optional parameter with default value 50

Modifications to Contacts GET Endpoint

Note: Below endpoints return the records from tblAuditTrail table.

/contacts?modified={timestamp}&{offset}&{limit}

  • Returns Contacts with a timestamp after the provided timestamp. The offset and maximum number of records can be provided.

  • TimeStamp – Is a long parameter.

  • Offset - Is an optional parameter with default value 0(zero)

  • limit - Is an optional parameter with default value 50

/contacts?modifiedsincedatemodifiedsincedate={datetime}&{offset}&{limit}

  • Returns Contactss with a timestamp after the provided timestamp. The offset and maximum number of records can be provided.

  • datetime – Is a datetime parameter. e.g. 2025-06-05:00:00:00

  • offset - Is an optional parameter with default value 0(zero)

  • limit - Is an optional parameter with default value 50

/contacts/modifiedsincedays?modifiedsincedays={days}&{offset}&{limit}

  • Returns Contacts modified in the last x days. The offset and maximum number of records can be provided.

  • days– Is an integer parameter.

  • Offset - Is an optional parameter with default value 0(zero)

  • limit - Is an optional parameter with default value 50

/contacts?startcontactid={startcontactid}&{offset}&{limit}

  • Returns Contacts modified in the last x days. The offset and maximum number of records can be provided.

  • startcontactid – Is an integer parameter.

  • limit - Is an optional parameter with default value 50

Developer Notes

  • Refer to the updated API documentation for the full schema.

  • Sample response payloads have been updated to include new or enhanced fields.

  • Ensure downstream systems are configured to handle and store any new fields if needed for reporting.

Backward Compatibility Maintained

Existing integrations will continue to function as expected. New fields are non-breaking and optional to consume.