What is Abound?

Abound uses advanced technologies to gather, analyze, and display data in real-time. This helps users in achieving intelligent, outcome-based results, making buildings more efficient and responsive. It also provides occupants with confidence in the health and safety of their indoor environments.

For more details, you can visit the Abound website at Abound by Carrier | Healthy & Efficient Buildings.

How it Works?

Discovery

The process begins with assessing the site/location to understand the devices that need to be monitored and the communication technologies they use, such as BACnet or MQTT. Abound's expert team will work with you to plan how to access your site effectively.

Extraction

Once the devices are assessed, the team establishes communications with the devices to extract data, either by using existing connections or deploying gateway devices. Our expert team can help users find the best way to access the data.

Normalization

After the data is extracted, Abound uses automated and manual methods to normalize and tag the data based on industry standards such as Brick. The data is then processed, stored in advanced storage systems, and made ready for extraction by API to other applications.

What is GraphQL?

GraphQL is a modern alternative to REST for API development. It is particularly useful for APIs with large datasets because users can build the structure of a complicated request into a single query.

For example, a GraphQL request can retrieve a significant amount of data in one go, whereas achieving the same results with REST might require multiple individual calls to multiple REST endpoints.

```graphql
query getNodeById {
getNodeById(id: "7de4daf7-4612-492b-97gg-6278798a36s6") {
    id
    name
    history(criteria: { fromDateTime: "2024-04-21", endDateTime: "2024-04-22" }) {
        points {
            type
            value
            timestamp
        }
    }
}

}

This query will yield:

  • The node for the authenticated user by ID.
  • The ID and name of the node.
  • Type, value, and timestamp for each point within the time range from 04-21-2024 to 04-22-2024. By adjusting a few parameters in the query string, this can be a powerful request.

How to make a GraphQL Query?

To make a GraphQL Query, you need to use a URL, headers, and a body for the query. Unlike REST calls, GraphQL does not require different request types (PUT/GET/POST/DELETE) or multiple URLs.

Here is an example format for the query:
URL: api.abound.carrier.io/prod-ahs-api/graphql

Note: This link won't work in a browser; you must use an API client or program.

Headers

  • abound-api-key: <token key from portal>
  • Content-Type: application/json

Request Body

The query string should be similar to the example above and shown on the example pages. While the query body can change for different responses, the URL and headers will remain the same.

Tools used for requests

You can use any modern client that handles GraphQL or even write code in languages such as Python. Here are some examples of client software that can be used: