Skip to main content

Prerequisites

Step 1: Get your API key

1

Sign in to the dashboard

Go to app.betacit.com and sign in to your account.
2

Create an API key

Navigate to Settings > API keys and click Create key. Give it a descriptive name like dev-testing.
3

Copy the key

The full key is shown once. Click the input field to select it, or use the copy button. Store it somewhere safe.
export TACIT_API_KEY="your-api-key-here"

Step 2: List your buildings

Use the GraphQL API to see which buildings are available in your account.
curl -X POST https://app.betacit.com/graphql \
  -H "Authorization: Bearer $TACIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "{ building(siteId: \"your-site-id\") { id name type } }"
  }'
Response
{
  "data": {
    "building": [
      {
        "id": "B001",
        "name": "One Pool Street",
        "type": "Building"
      }
    ]
  }
}

Step 3: Query equipment in a building

Now query the HVAC equipment in one of your buildings. The is argument uses Brick Schema class hierarchy: querying HVAC_Equipment automatically matches AHUs, VAVs, FCUs, and every other subtype.
{
  equipment(siteId: "your-site-id", is: "HVAC_Equipment") {
    name
    type
    points(is: "Temperature_Sensor") {
      name
      type
    }
  }
}
Response
{
  "data": {
    "equipment": [
      {
        "name": "TE01-XX-AHU-001",
        "type": "AHU",
        "points": [
          {
            "name": "TE01-XX-AHU-001/Supply_Temp",
            "type": "Supply_Air_Temperature_Sensor"
          },
          {
            "name": "TE01-XX-AHU-001/Return_Temp",
            "type": "Return_Air_Temperature_Sensor"
          }
        ]
      },
      {
        "name": "TW01-LBR-RPC-01",
        "type": "VAV",
        "points": [
          {
            "name": "TW01-LBR-RPC-01/Space_Temp",
            "type": "Zone_Air_Temperature_Sensor"
          }
        ]
      }
    ]
  }
}
You didn’t specify AHUs or VAVs individually. The is: "HVAC_Equipment" argument matched them both through class hierarchy inference. Learn more in class hierarchy.

Step 4: Follow equipment chains

Use the upstream field to find what equipment feeds a zone, without knowing how deep the chain goes.
{
  zone(siteId: "your-site-id", name: "Library") {
    name
    upstream {
      name
      type
    }
  }
}
Response
{
  "data": {
    "zone": [
      {
        "name": "Library",
        "upstream": [
          { "name": "TW01-LBR-RPC-01", "type": "VAV" },
          { "name": "TW01-LBR-RPC-02", "type": "VAV" },
          { "name": "TW01-XX-AHU-001", "type": "AHU" },
          { "name": "TW01-XX-AHU-002", "type": "AHU" },
          { "name": "Tower West HIU System", "type": "Heat_Exchanger" }
        ]
      }
    ]
  }
}
The full supply chain traced automatically: VAV boxes → AHUs → Heat Interface Unit, all through feeds relationships. Learn more in relationships and traversal.

Next steps

How Tacit works

Understand the architecture behind the platform.

Brick Schema

Learn why standardized building data changes everything.

Query your first building

A deeper walkthrough with more query patterns.

GraphQL API reference

Full reference for the GraphQL query surface.