Skip to content
Rigel docs
Open Rigel

The house's items

maintenance.asset.list

GET/api/v1/households/{household_id}/queries/maintenance.asset.list

  • Query
  • Rigel runs it

Assets (appliances, equipment, fixtures, systems), optionally for one property, place or category or matching text in the name, model number, maker, serial or place. Retired items are left out unless asked for. Each has its place, model and status; use maintenance.asset.get for everything about one.

Parameters#

The house's items: parameters
FieldDescription
household_idpathstringrequired

The household's ID.

property_idquerystringoptional

Only this property's items.

location_idquerystringoptional

Only items directly in this place.

category_keyquerystringoptional

Only this curated category, such as furnace.

category_idquerystringoptional

Only this category (including a one-off one).

parent_idquerystringoptional

Only members of this group.

textquerystringoptional

Only items whose name, maker, model number, serial or place contains this text, ignoring case.

include_retiredquerybooleanoptional

Include retired items. Default false.

limitqueryintegeroptional

How many to return, default 100.

1 to 500

Response#

200 The answer.

The house's items: response fields
FieldDescription
itemsarray of objectsrequired
items[].idstringrequired

A asset ID, such as ast_01JC0000000000000000000000.

items[].addressstring or nullrequired

The web route that opens it.

items[].namestringrequired

What the household calls it.

items[].property_idstringrequired

A property ID, such as prp_01JC0000000000000000000000.

items[].property_namestringrequired

The property it is at.

items[].location_idstring or nullrequired

The place it is in.

items[].location_namestring or nullrequired

The place it is in, with the places that contain it.

items[].category_idstringrequired

A maintenance category ID, such as cat_01JC0000000000000000000000.

items[].category_keystring or nullrequired

The curated category key; null for a one-off category.

items[].category_namestringrequired

The category's name.

items[].parent_idstring or nullrequired

The group it belongs to.

items[].parent_namestring or nullrequired

The group's name.

items[].modelobject or nullrequired

Its model, once identified.

items[].model.idstringrequired

A equipment model ID, such as eqm_01JC0000000000000000000000.

items[].model.manufacturerstring or nullrequired

The maker.

items[].model.model_numberstring or nullrequired

The complete model number, exactly as printed.

items[].model.variantstring or nullrequired

A variant that changes compatibility or specs.

items[].model.labelstring or nullrequired

Maker, model number and variant together, such as "Carrier 59SC5A060S17".

items[].serialstring or nullrequired

Its serial number.

items[].statusone of: partial, researching, identified, needs_inputrequired

partial (known by name, not identified yet), researching (Rigel is looking up the model), identified (the model is known), needs_input (Rigel couldn't verify the model and needs a closer label photo or a choice).

items[].quantityintegerrequired

How many identical items this record stands for.

items[].retired_onstring or nullrequired

When it was retired, YYYY-MM-DD; null while in service.

items[].photo_file_idstring or nullrequired

A photo of the unit to show with it, if there is one.

truncatedbooleanrequired

True when more matched than the limit allowed.

Errors#

Every error has the same envelope: error.code, error.message, error.details, error.recovery and error.request_id.

The house's items: errors
StatusCodeWhen
400validation_failedA field is missing, misspelled or out of range. details.fields lists each problem.
401unauthenticatedThe request has no valid session.
404not_foundThe household doesn't exist, or you aren't a member of it.

Examples#

These are real. Each was recorded from a sample household, the Okafors, running through the whole API when this site was built.

List the items in the house

Request, curl
curl 'https://rigel.house/api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/maintenance.asset.list' \
  -H "Cookie: rigel_session=$RIGEL_SESSION"
Request, TypeScript
const response = await fetch("https://rigel.house/api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/maintenance.asset.list", {
  headers: {
    Cookie: `rigel_session=${process.env.RIGEL_SESSION}`,
  },
});
const data = await response.json();
Request, HTTP
GET /api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/maintenance.asset.list HTTP/1.1
Host: rigel.house
Cookie: rigel_session=<your session>
Response, 200
HTTP/1.1 200 OK
Content-Type: application/json
X-Request-Id: req_01M6V9CT0015HJ91VCJDHD19QX

{
  "items": [
    {
      "id": "ast_01M6V9CSVCMZFAP6ZN5WANZ6M8",
      "address": "/maintenance/assets/ast_01M6V9CSVCMZFAP6ZN5WANZ6M8",
      "name": "Basement furnace",
      "property_id": "prp_01M6V9CSTXS6P4CG6RNTNT60FA",
      "property_name": "The Okafor house",
      "location_id": "mlc_01M6V9CSTZEJ4XTJHRBQ1HGD2J",
      "location_name": "Utility closet, Basement",
      "category_id": "cat_01M6V9CSVCJFP27BZN7X5PGZ0B",
      "category_key": "furnace",
      "category_name": "Furnace",
      "parent_id": null,
      "parent_name": null,
      "model": {
        "id": "eqm_01M6V9CSVCHRA5SDZNT6181WQM",
        "manufacturer": "Hearthline",
        "model_number": "FX96-080-1625",
        "variant": null,
        "label": "Hearthline FX96-080-1625"
      },
      "serial": "4116A04418",
      "status": "identified",
      "quantity": 1,
      "retired_on": null,
      "photo_file_id": null
    },
    {
      "id": "ast_01M6V9CSVH77630WV0WA1X2DAK",
      "address": "/maintenance/assets/ast_01M6V9CSVH77630WV0WA1X2DAK",
      "name": "Dishwasher",
      "property_id": "prp_01M6V9CSTXS6P4CG6RNTNT60FA",
      "property_name": "The Okafor house",
      "location_id": "mlc_01M6V9CSV0Z1XFB5VWFWXV2SQY",
      "location_name": "Kitchen",
      "category_id": "cat_01M6V9CSVHXYSD61W0E42142BW",
      "category_key": "dishwasher",
      "category_name": "Dishwasher",
      "parent_id": null,
      "parent_name": null,
      "model": {
        "id": "eqm_01M6V9CSVYCP9NFV9882GFRJFN",
        "manufacturer": "Hartwell",
        "model_number": "HDW-3250",
        "variant": null,
        "label": "Hartwell HDW-3250"
      },
      "serial": null,
      "status": "identified",
      "quantity": 1,
      "retired_on": null,
      "photo_file_id": null
    },
    {
      "id": "ast_01M6V9CSVKPYARY331YY06WH85",
      "address": "/maintenance/assets/ast_01M6V9CSVKPYARY331YY06WH85",
      "name": "Dryer",
      "property_id": "prp_01M6V9CSTXS6P4CG6RNTNT60FA",
      "property_name": "The Okafor house",
      "location_id": "mlc_01M6V9CSV1BGK3V8FK4RRCEZYS",
      "location_name": "Laundry nook",
      "category_id": "cat_01M6V9CSVK582SK631HZ9RCPFG",
      "category_key": "dryer",
      "category_name": "Dryer",
      "parent_id": null,
      "parent_name": null,
      "model": null,
      "serial": null,
      "status": "partial",
      "quantity": 1,
      "retired_on": null,
      "photo_file_id": null
    },
    {
      "id": "ast_01M6V9CSVR6DNGA62713A0QSFA",
      "address": "/maintenance/assets/ast_01M6V9CSVR6DNGA62713A0QSFA",
      "name": "New washing machine",
      "property_id": "prp_01M6V9CSTXS6P4CG6RNTNT60FA",
      "property_name": "The Okafor house",
      "location_id": "mlc_01M6V9CSV1BGK3V8FK4RRCEZYS",
      "location_name": "Laundry nook",
      "category_id": "cat_01M6V9CSVPCJ2670JSD2W4GJX1",
      "category_key": "washer",
      "category_name": "Washer",
      "parent_id": null,
      "parent_name": null,
      "model": null,
      "serial": null,
      "status": "partial",
      "quantity": 1,
      "retired_on": null,
      "photo_file_id": null
    },
    {
      "id": "ast_01M6V9CSVNY4PN710B9NWNSNVT",
      "address": "/maintenance/assets/ast_01M6V9CSVNY4PN710B9NWNSNVT",
      "name": "Smoke alarms",
      "property_id": "prp_01M6V9CSTXS6P4CG6RNTNT60FA",
      "property_name": "The Okafor house",
      "location_id": null,
      "location_name": null,
      "category_id": "cat_01M6V9CSVNDWVKW30BWF58AT9X",
      "category_key": "smoke_alarm",
      "category_name": "Smoke alarm",
      "parent_id": null,
      "parent_name": null,
      "model": null,
      "serial": null,
      "status": "partial",
      "quantity": 5,
      "retired_on": null,
      "photo_file_id": null
    },
    {
      "id": "ast_01M6V9CSVGS9W2A8K5MDGN7GGD",
      "address": "/maintenance/assets/ast_01M6V9CSVGS9W2A8K5MDGN7GGD",
      "name": "Water heater",
      "property_id": "prp_01M6V9CSTXS6P4CG6RNTNT60FA",
      "property_name": "The Okafor house",
      "location_id": "mlc_01M6V9CSTX3QNP5B6R3SMP5B2B",
      "location_name": "Basement",
      "category_id": "cat_01M6V9CSVG3TVM33K52CFH6V3E",
      "category_key": "water_heater",
      "category_name": "Water heater",
      "parent_id": null,
      "parent_name": null,
      "model": {
        "id": "eqm_01M6V9CSVGWCW4G0K5ZADZNTTE",
        "manufacturer": "Tidewell",
        "model_number": "WH50-NG-40",
        "variant": null,
        "label": "Tidewell WH50-NG-40"
      },
      "serial": null,
      "status": "identified",
      "quantity": 1,
      "retired_on": null,
      "photo_file_id": null
    }
  ],
  "truncated": false
}

List what's in the kitchen

Request, curl
curl 'https://rigel.house/api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/maintenance.asset.list?location_id=mlc_01M6V9CSV0Z1XFB5VWFWXV2SQY' \
  -H "Cookie: rigel_session=$RIGEL_SESSION"
Request, TypeScript
const response = await fetch("https://rigel.house/api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/maintenance.asset.list?location_id=mlc_01M6V9CSV0Z1XFB5VWFWXV2SQY", {
  headers: {
    Cookie: `rigel_session=${process.env.RIGEL_SESSION}`,
  },
});
const data = await response.json();
Request, HTTP
GET /api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/maintenance.asset.list?location_id=mlc_01M6V9CSV0Z1XFB5VWFWXV2SQY HTTP/1.1
Host: rigel.house
Cookie: rigel_session=<your session>
Response, 200
HTTP/1.1 200 OK
Content-Type: application/json
X-Request-Id: req_01M6V9CT04GGPZWV21B7CZ9BK5

{
  "items": [
    {
      "id": "ast_01M6V9CSVH77630WV0WA1X2DAK",
      "address": "/maintenance/assets/ast_01M6V9CSVH77630WV0WA1X2DAK",
      "name": "Dishwasher",
      "property_id": "prp_01M6V9CSTXS6P4CG6RNTNT60FA",
      "property_name": "The Okafor house",
      "location_id": "mlc_01M6V9CSV0Z1XFB5VWFWXV2SQY",
      "location_name": "Kitchen",
      "category_id": "cat_01M6V9CSVHXYSD61W0E42142BW",
      "category_key": "dishwasher",
      "category_name": "Dishwasher",
      "parent_id": null,
      "parent_name": null,
      "model": {
        "id": "eqm_01M6V9CSVYCP9NFV9882GFRJFN",
        "manufacturer": "Hartwell",
        "model_number": "HDW-3250",
        "variant": null,
        "label": "Hartwell HDW-3250"
      },
      "serial": null,
      "status": "identified",
      "quantity": 1,
      "retired_on": null,
      "photo_file_id": null
    }
  ],
  "truncated": false
}

Find an item by model number

text matches names, models, makers, serials and places, ignoring punctuation.

Request, curl
curl 'https://rigel.house/api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/maintenance.asset.list?text=FX96' \
  -H "Cookie: rigel_session=$RIGEL_SESSION"
Request, TypeScript
const response = await fetch("https://rigel.house/api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/maintenance.asset.list?text=FX96", {
  headers: {
    Cookie: `rigel_session=${process.env.RIGEL_SESSION}`,
  },
});
const data = await response.json();
Request, HTTP
GET /api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/maintenance.asset.list?text=FX96 HTTP/1.1
Host: rigel.house
Cookie: rigel_session=<your session>
Response, 200
HTTP/1.1 200 OK
Content-Type: application/json
X-Request-Id: req_01M6V9CT05GCPMHK6WKT10DQDX

{
  "items": [
    {
      "id": "ast_01M6V9CSVCMZFAP6ZN5WANZ6M8",
      "address": "/maintenance/assets/ast_01M6V9CSVCMZFAP6ZN5WANZ6M8",
      "name": "Basement furnace",
      "property_id": "prp_01M6V9CSTXS6P4CG6RNTNT60FA",
      "property_name": "The Okafor house",
      "location_id": "mlc_01M6V9CSTZEJ4XTJHRBQ1HGD2J",
      "location_name": "Utility closet, Basement",
      "category_id": "cat_01M6V9CSVCJFP27BZN7X5PGZ0B",
      "category_key": "furnace",
      "category_name": "Furnace",
      "parent_id": null,
      "parent_name": null,
      "model": {
        "id": "eqm_01M6V9CSVCHRA5SDZNT6181WQM",
        "manufacturer": "Hearthline",
        "model_number": "FX96-080-1625",
        "variant": null,
        "label": "Hearthline FX96-080-1625"
      },
      "serial": "4116A04418",
      "status": "identified",
      "quantity": 1,
      "retired_on": null,
      "photo_file_id": null
    }
  ],
  "truncated": false
}

List items of one kind

category_key is a key from maintenance.category.list.

Request, curl
curl 'https://rigel.house/api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/maintenance.asset.list?category_key=furnace' \
  -H "Cookie: rigel_session=$RIGEL_SESSION"
Request, TypeScript
const response = await fetch("https://rigel.house/api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/maintenance.asset.list?category_key=furnace", {
  headers: {
    Cookie: `rigel_session=${process.env.RIGEL_SESSION}`,
  },
});
const data = await response.json();
Request, HTTP
GET /api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/maintenance.asset.list?category_key=furnace HTTP/1.1
Host: rigel.house
Cookie: rigel_session=<your session>
Response, 200
HTTP/1.1 200 OK
Content-Type: application/json
X-Request-Id: req_01M6V9CT0667ATX3K7Q5HK9JTH

{
  "items": [
    {
      "id": "ast_01M6V9CSVCMZFAP6ZN5WANZ6M8",
      "address": "/maintenance/assets/ast_01M6V9CSVCMZFAP6ZN5WANZ6M8",
      "name": "Basement furnace",
      "property_id": "prp_01M6V9CSTXS6P4CG6RNTNT60FA",
      "property_name": "The Okafor house",
      "location_id": "mlc_01M6V9CSTZEJ4XTJHRBQ1HGD2J",
      "location_name": "Utility closet, Basement",
      "category_id": "cat_01M6V9CSVCJFP27BZN7X5PGZ0B",
      "category_key": "furnace",
      "category_name": "Furnace",
      "parent_id": null,
      "parent_name": null,
      "model": {
        "id": "eqm_01M6V9CSVCHRA5SDZNT6181WQM",
        "manufacturer": "Hearthline",
        "model_number": "FX96-080-1625",
        "variant": null,
        "label": "Hearthline FX96-080-1625"
      },
      "serial": "4116A04418",
      "status": "identified",
      "quantity": 1,
      "retired_on": null,
      "photo_file_id": null
    }
  ],
  "truncated": false
}

For Rigel#

Rigel's tool for this query is maintenance_asset_list. Rigel runs this on its own, then says what it did. The agent guide has the rest.

Rigel is in early access, and sign-up is by invitation. Open Rigel