Order Ops Views

HyperTrack provide different Order centric embeddable Ops Views.

Orders List/Map View

The Order list/map view provides all the orders in a tabular format or on a map. It provides powerful filters that allow Ops teams to slice and view segments of data based on schedule times, metadata, statuses, Ops Groups and much more. Once an Ops member has found the segment of data, they can export it to analyze the data further.

List View

Sample URL:

https://embed.hypertrack.com/views/orders?token=<token from OAuth API>&schedule-date-from=2024-07-10&schedule-date-to=2024-08-09

Map View

Sample URL:

https://embed.hypertrack.com/views/orders?token=<token from OAuth API>&schedule-date-from=2024-07-10&schedule-date-to=2024-08-09&order-view=map

Restrict views based on Ops teams

The Order List/Map view can be customized for your teams or customers. You can filter the data in these views based on the metadata provided for each order or operations group you've set up.

For instance, ops managers might need to see where their team members are, or you might want to create restricted views for different clients in an operations dashboard.

To achieve this, use the following encoded filter in the URL when embedding these dashboards into your web application.

// Get the URL filter programatically

// let obj = {"profile": {"zoneId": "1"}}
// let urlEncodedFilterStateString = encodeURIComponent(btoa(JSON.stringify(obj)))
// console.log(urlEncodedFilterStateString)

Example:

https://embed.hypertrack.com/orders?token=<token from OAuth API>&order-list-state=<urlEncodedFilterStateString>

πŸ“˜

Your metadata can only have one layer of nesting and must be a valid JSON

Example - { "shift_id": 20240812 }

Your browser will most likely encode { } and : special characters, but when distributing embed URLs with a metadata_filter, be sure to encode your link. To read more about URL encoding, please read this guide.

Order Timeline View

The Order Profile view provides details of an Order along with the entire timeline of events that occurred during the lifetime of the order. The combination of the timeline and the map enables your Ops teams to deep dive into what, when, where and how the fulfillment of the order took place to help them triage and ensure business success.


Order Analytics

It's important to ensure that all your orders are being tracked as expected through the HyperTrack platform. In order to provide this visibility, we provide aggregated metric charts in your Order Ops List view that can help you look at trends over the past 60 days.

Orders Chart

This chart offers a daily snapshot of successfully tracked versus untracked orders within the selected time range. It’s crucial to keep the untracked count low, aiming for a tracked order rate close to 100% to ensure your teams have full visibility into all field activities.


Tracking Health Chart

This chart provides the score of how well your orders tracked considering the subset of order that tracked. A high tracking health score ensures that during the lifetime of your orders, sufficient ground truth was available to help your Ops teams have visibility.


Outages Chart

This chart provides the day-wise split of outages that impacted your Orders. These outages have been distributed within buckets to reflect the cause. Learn more about the different outages here.


In addition, we provide an action report that helps you quickly identify the top impacting outages and the steps you need to take to resolve them.


Embed Customizations

We provide the ability to customize, show and hide elements in our embeddable Order Ops view. Each of the options can be provided as URL parameters to configure your custom embed experience.

ParameterViewValuesDescription
show-driversMap Viewtrue/falseDisplays driver locations on the orders map.
map-onlyMap Viewtrue/falseDisplays the map only view with all orders loaded.
hide-headerMap/List Viewtrue/falseHides the page header
hide-controlsMap/List Viewtrue/falseHides the entire controls section. For more fine-grained control, see the options below:
hide-searchMap/List Viewtrue/falseHides the search bar
hide-filtersMap/List Viewtrue/falseHides the orders filters (ie, status, completed date selector, scheduled date selector, ops group filter, risk orders, tracked/untracked filter & outages filter)
hide-view-switcherMap/List Viewtrue/falseHides the button to switch between the map/list views
hide-order-exportMap/List Viewtrue/falseHides the button to export orders
hide-order-importMap/List Viewtrue/falseHides the button to import orders
hide-outages-reportMap/List Viewtrue/falseHides the button which shows outages report for orders
hide-chartsMap/List Viewtrue/falseHides the aggregate charts
hide-summary-cardMap/List Viewtrue/falseHides the summary card of orders
order-list-stateMap/List ViewBase64 encoded stringBase64 encoding of a JSON object with fields described below
order-list-state.driver_handlesMap/List ViewArray of stringsList of driver handles to filter orders by.
order-list-state.profileMap/List ViewstringJSON / JSON PATH string for profile (metadata) values to filter drivers by.

JSON PATH can be used for applying an "OR" clause to metadata filters. For example, passing:"$ ? (@.c1 == \"New York\" | @.c2 == \"San Francisco\" \\ | @.c3 == \"London\")" as the value of profile will filter all orders that have one of the 3 metadata values set.

Example usage for order-list-state

let obj = {"profile": {"country": "USA"}, "driver_handles": ["driver-1", "driver-2"]}
let urlEncodedStateString = encodeURIComponent(btoa(JSON.stringify(obj)))
console.log(urlEncodedStateString)

This snippet would output: eyJwcm9maWxlIjp7ImNvdW50cnkiOiJVU0EifSwiZHJpdmVyX2hhbmRsZXMiOlsiZHJpdmVyLTEiLCJkcml2ZXItMiJdfQ%3D%3D

The output can be passed in as the value of the order-list-state Query param.