ChallengesDocs

Device Types

Look up Equiply's device-type reference and its useful-life values

Device Types

Equiply classifies every device into a device type from a fixed reference list, such as Infusion Pump or Defibrillator. Each type belongs to a broader category and carries three useful-life values in years. Questions 4 to 6 use this list.

These endpoints are a read-only view of Equiply's reference. They need your API key, like every other Round 2 endpoint, and count toward the same rate limit.

Useful Life and Replacement Strategy

Every type has three lifespans:

FieldMeaning
proactiveLifespanReplace early, before reliability drops. The shortest of the three
standardLifespanThe typical service life for the type
extendedLifespanKeep devices in service as long as they stay safe. The longest of the three

A health system picks one replacement strategy: Proactive, Standard or Extended. That choice decides which lifespan its plans use. The health system in this round runs the Extended strategy, so a device's useful life is its type's extendedLifespan, and it reaches end of life at its manufactured date plus that many years.

There's no endpoint that lists every type. Find candidate types with search, then look them up by name.

Get One Type

GET /api/v2/device-types/:type

The name match ignores case. URL-encode the name, for example /api/v2/device-types/Infusion%20Pump. Returns { "data": { ... } }, or 404 when no type has that name:

{
  "data": {
    "type": "Infusion Pump",
    "category": "Patient Care",
    "equipmentFunction": "Patient Care",
    "synonyms": [],
    "standardLifespan": 10,
    "proactiveLifespan": 7,
    "extendedLifespan": 13
  }
}

Batch Lookup

POST /api/v2/device-types/batch

{ "device_types": ["Infusion Pump", "Defibrillator", "Not A Type"] }

Up to 200 names. Each name you sent maps to its type, or to null when it isn't in the reference:

{
  "data": {
    "Infusion Pump": {
      "type": "Infusion Pump",
      "category": "Patient Care",
      "...": "..."
    },
    "Defibrillator": {
      "type": "Defibrillator",
      "category": "General Diagnostic",
      "...": "..."
    },
    "Not A Type": null
  }
}

POST /api/v2/device-types/search

POST /api/v2/device-types/hybrid-search

{ "query": "iv pump", "limit": 10 }
  • search is a fuzzy text search over type names, synonyms and descriptions.
  • hybrid-search combines that fuzzy search with a semantic (vector) search, so it also finds types described in different words.
  • query is up to 200 characters. limit is 1 to 50 and defaults to 15.

Results are ranked best first and include a score. hybrid-search results also carry the three lifespans; search results don't, so look the type up with GET or batch once you've picked it. A top hit is a suggestion, not an answer: the reference is granular, and the closest-sounding type is often a module, accessory or specialty variant of the device you're labeling.

{
  "data": [
    {
      "type": "Infusion Pump",
      "category": "Patient Care",
      "equipmentFunction": "Patient Care",
      "synonyms": [],
      "score": 0.032
    }
  ],
  "count": 1
}

Errors

StatuserrorWhen
400INVALID_REQUESTMissing or malformed query or device_types
404NOT_FOUNDGET /:type with an unknown name
502UPSTREAM_UNAVAILABLEEquiply's reference service didn't answer; retry shortly