# “Deep” API Integration (“Push”)

By “deep” integrating the real-time tracking experience you are taking full responsibility. **The complexity of this integration must be fully understood.** All necessary information and features must be considered.
Additionally, the integration must be updated promptly when Bettermile provides new features.

**Bettermile offers a subscription service (“Push” via webhook) to provide you with all the needed data and in-time updates to enable you to create a unique and wholesome tracking experience.**

## Requirements

- You need to consider **all** information and features when “deeply” integrating:
  - The ETA Time window
  - The number of Remaining stops
  - The time remaining for delivery
  - The driver's and consignee's location on a map
  - The shipper and consignee information
  - Proactive communication on time window changes
  - Deposit permissions
  - Redirections to a neighbor
  - Redirections  to a Parcel Shop or Locker
  - Send a note to the drive
- You must be able to provide a state-of-the-art tracking experience
- You must be able to track the overall performance and the detailed usage of the user interface and features
- You must offer a rating for the consignees (More details in next section)
- You must regularly update the user interface to meet the latest state-of-the-art standards and stay best-in-class consistently


## Technical Integration

- Use Availability Webhook to understand when the parcel becomes available for tracking.
- The integration must
  - Support retry mechanisms and idempotency to handle transient failures without data duplication or loss
  - Ensure 99.9% uptime and processing of webhook events within 500 milliseconds to avoid piled-up messaging queues that would delay invites to consignees
  - Industry incident management best practices including monitoring, alerting, and duty shifts during peak times
- Use the subscription service to get tracking information for the parcel. This includes shipper and consignee address, delivery information, ETA timestamps, and much more
- Implement features to ensure high UX