Skip to main content

ToolWatch OData API Overview

What the ToolWatch OData API is, common uses, how to connect, requirements, limitations, supported query options, and custom fields.

Welcome to ToolWatch OData

ToolWatch has updated Reporting Cloud to leverage OData v4, allowing you to access your organizational data through any service that supports REST requests like PowerBI, Tableau, Looker and others. If you have been using the old Reporting Cloud with an ODBC connection, or if you’re just getting up and running you can move to OData by following the guide below. Have questions? Would you like to know about our services to help you set up your BI dashboards? Contact support@toolwatch.com.


Overview

The OData API, OData v4, offers a comprehensive set of organizational data accessible through REST requests. This API is compatible with any software capable of executing REST requests.


Common Usage Scenarios

  • Replace Reporting Cloud: Utilize the API for advanced reporting capabilities.

  • Export Job Cost & Billing Data: Seamlessly integrate with your accounting systems.

  • Analyze Kit Contents: Efficiently manage and analyze the contents of kits.


Connection Guide

Enterprise Platform Customers can access OData

  • The OData API server's web address.

  • Basic Authentication using your ToolWatch credentials.


Access Via:

The OData API server can be accessed from

  • Power BI Desktop

  • Microsoft Excel

  • Microsoft Access

  • Custom .NET application

  • Any application supporting REST


Requirements

  • Microsoft Office Products: Products like Power BI, Excel, and Access come with a data connection wizard for custom OData Feed connectivity.

  • Custom .NET Applications: Utilize HttpClient, RESTClient, or ODataClient for development.


Document Conventions

  • Terminology: The terms "tools" or "materials" refer to Tools & Equipment and Materials & Consumables, respectively. The term "asset" is used generically for both.

  • Asset Classification: Assets are classified as either uniquely-tracked (e.g., tools, kits) or quantity-tracked (e.g., materials, quantity tools).


Current Limitations

The current MVP implementation of the OData API includes:

  • Data request capability only; modifications are not supported.

  • Support for $select and $filter query options.

ToolWatch may terminate queries that are particularly heavy and impacting other users. If you find your queries are being cancelled, please consider scheduling them at times of the day that are less busy. You might also consider limiting the query to only the data you need or making use of paging.


Supported Query Options

  • $select: Specify result set columns (e.g., $select=FirstName,LastName).

  • $filter: Filter resource collections via the request URL.

  • Operators: eq, ne, gt, ge, lt, le

  • String functions: [not] contains, startswith, endswith

Every entity in the OData Entities articles is exposed in the OData feed under a namespace. Reporting Cloud entities use the rc namespace (e.g. rc.Entities); report-template entities use the template / templates namespace. Each entity lists its exact feed entity-set name. The OrgId column is never returned by the API and is not listed.


Custom Fields

Your organization's custom fields are returned as additional columns on the entities that support them. Each custom field appears as a column named after the field's label (spaces removed), holding that field's value for each row. Because custom fields differ per organization, they are not listed in the OData Entities tables, but they appear automatically when you query these entities:

  • ToolBrowser: item / tool custom fields

  • Employees: employee custom fields

  • Locations: location custom fields

  • CostCenters: cost-center custom fields

  • RetiredTools: item / tool custom fields

Did this answer your question?