FixGrid API · v1

The maintenance record, available to the systems around it.

A public API over the maintenance record of one FixGrid customer: list and fetch for eight objects, write for tickets and occupancy, plus signed webhooks for the ten events that matter while work is moving — and the three routes that manage your own subscriptions. Built for partners integrating on a customer's behalf.

What the key is

A FixGrid API key is a company credential. A Company Admin mints it on Integrations → Developers, and it returns only that company's records. There is no cross-portfolio key and no FixGrid-wide key.

It is for server-side use only. Never ship a key in a browser, a mobile app, a spreadsheet macro, or a Claude / MCP connector.

Not a user login
User-level OAuth (“connect as yourself”) is a later, separate door. It is not this key.

What it carries

KeyTypeNotes
scopestringOne of read · write · webhook_only, fixed at mint. read opens every list and fetch; write also creates tickets, changes ticket status, records occupancy, and satisfies the other two; webhook_only manages subscriptions. See scopes.
headerAuthorization: Bearer <key>
rate limitper key120 per minute per key. See rate limits.
page sizeintegerDefault 50, maximum 200 rows per list call, from the document's limit parameter. See paging.
planIncluded on every plan. Starter, Professional, and Enterprise. No partner fee.

How you get one

A Company Admin mints the key inside FixGrid. This page cannot mint a key. There is no FixGrid-wide key and no cross-portfolio key.

  1. Open Integrations → Developers.
  2. Create a key. Label it with the integration's name.
  3. Choose a scope — read, write, or webhook_only.
  4. Copy the value. It is shown once. Hand it to the partner over a channel you both trust.
  5. Revoke it on the same tab at any time.
If you have lost a value
Nobody can read it back — FixGrid stores a hash, not the value. Ask the admin to mint a new one and revoke the old.

Your first request

/whoami is the cheapest way to prove a key works: it touches no records and tells you which company and scope you are holding.

GET/api/v1/whoamiany active key
Request
curl
curl https://app.fixgrid.app/api/v1/whoami \
  -H "Authorization: Bearer $FIXGRID_KEY"
Response · 200
json
{
  "api_version": "v1",
  "company": { "name": "Sunrise Property Group", "slug": "spg" },
  "key": { "label": "Acme Integrations", "prefix": "fg_live_8Kq2", "scope": "read" }
}

Keys begin fg_live_. The first twelve characters are the prefix, which the administrator can see on their end — quote it when you need to talk about a specific key without sending the key.

What is here

Read
Eight objects
Tickets, properties, units, assets, vendors, inspections, turns, meters — list and fetch. Readings hang off a meter.
Write
Tickets & occupancy
Create a ticket, change its status, record a notice to vacate or a move-in. Scope write.
Push
Ten signed events
Queued when they happen, first attempt on the hourly sweep, HMAC-signed, retried 1 · 2 · 4 · 8 · 24 h.

Talk to us (optional)

Building on a customer's behalf? You do not apply to FixGrid for a key. The customer's Company Admin mints it on Integrations → Developers and hands it to you.

If you want a person to look at what you are building before you start, use the form. It does not create a key, grant access, or change anything in a FixGrid account.

Tell us what you are building
We read every one of these. You will hear from a person, not a queue.
Submitting this does not create an API key, grant access, or change anything in a FixGrid account.