UpKeep website screenshot

UpKeep

UpKeep is an asset operations management and CMMS (Computerized Maintenance Management System) platform for maintenance teams and facility managers. The UpKeep API provides programmatic access to work orders, assets, locations, preventive maintenance schedules, parts inventory, purchase orders, meters, requests, and webhooks.

1 APIs 0 Features
CMMSMaintenance ManagementAsset ManagementFacility ManagementWork Orders

APIs

UpKeep API

The UpKeep API provides programmatic access to the UpKeep CMMS platform, enabling management of work orders, assets, locations, preventive maintenance schedules, parts inventory...

Collections

UpKeep API

OPEN

Pricing Plans

Upkeep Plans Pricing

3 plans

PLANS

Rate Limits

Upkeep Rate Limits

5 limits

RATE LIMITS

FinOps

Upkeep Finops

FINOPS

Semantic Vocabularies

Upkeep Context

5 classes · 24 properties

JSON-LD

API Governance Rules

UpKeep API Rules

7 rules · 5 warnings 2 info

SPECTRAL

JSON Structure

Upkeep Work Order Structure

0 properties

JSON STRUCTURE

Example Payloads

Upkeep List Assets Example

2 fields

EXAMPLE

Resources

👥
GitHubOrganization
GitHubOrganization
🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
Documentation
Documentation
🔗
REST API Integration
REST API Integration
🔗
LlmsText
LlmsText

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: UpKeep API
  version: '2022-09-14'
request:
  auth:
    type: apikey
    key: session-token
    value: '{{session-token}}'
    placement: header
items:
- info:
    name: Authentication
    type: folder
  items:
  - info:
      name: Create Session
      type: http
    http:
      method: POST
      url: https://api.onupkeep.com/api/v2/auth
      body:
        type: json
        data: '{}'
    docs: Authenticate with email and password to obtain a session token.
  - info:
      name: Delete Session
      type: http
    http:
      method: DELETE
      url: https://api.onupkeep.com/api/v2/auth
    docs: Invalidate the current session token (logout).
- info:
    name: Work Orders
    type: folder
  items:
  - info:
      name: List Work Orders
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/work-orders
      params:
      - name: page
        value: ''
        type: query
        description: Pagination offset (number of records to skip)
      - name: limit
        value: ''
        type: query
        description: Number of records to return
      - name: status
        value: ''
        type: query
        description: Filter by work order status
      - name: priority
        value: ''
        type: query
        description: Filter by priority level
      - name: includes
        value: ''
        type: query
        description: Comma-separated list of related resources to include (e.g., assignedTo,location,asset)
      - name: sort
        value: ''
        type: query
        description: Sort field and direction (e.g., createdAt:desc)
    docs: Retrieve a paginated list of work orders. Supports filtering by status, priority, asset, location, and date range.
  - info:
      name: Create Work Order
      type: http
    http:
      method: POST
      url: https://api.onupkeep.com/api/v2/work-orders
      body:
        type: json
        data: '{}'
    docs: Create a new work order for maintenance tasks.
  - info:
      name: Get Work Order
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/work-orders/:id
      params:
      - name: id
        value: ''
        type: path
        description: Work order identifier
      - name: includes
        value: ''
        type: query
        description: Related resources to include
    docs: Retrieve details of a specific work order.
  - info:
      name: Update Work Order
      type: http
    http:
      method: PATCH
      url: https://api.onupkeep.com/api/v2/work-orders/:id
      params:
      - name: id
        value: ''
        type: path
      body:
        type: json
        data: '{}'
    docs: Update fields on an existing work order.
  - info:
      name: Delete Work Order
      type: http
    http:
      method: DELETE
      url: https://api.onupkeep.com/api/v2/work-orders/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Permanently delete a work order.
- info:
    name: Assets
    type: folder
  items:
  - info:
      name: List Assets
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/assets
      params:
      - name: page
        value: ''
        type: query
      - name: limit
        value: ''
        type: query
      - name: includes
        value: ''
        type: query
        description: Comma-separated related resources to include
      - name: locationId
        value: ''
        type: query
        description: Filter by location
    docs: Retrieve a paginated list of assets.
  - info:
      name: Create Asset
      type: http
    http:
      method: POST
      url: https://api.onupkeep.com/api/v2/assets
      body:
        type: json
        data: '{}'
    docs: Create a new asset in the system.
  - info:
      name: Get Asset
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/assets/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Retrieve details of a specific asset.
  - info:
      name: Update Asset
      type: http
    http:
      method: PATCH
      url: https://api.onupkeep.com/api/v2/assets/:id
      params:
      - name: id
        value: ''
        type: path
      body:
        type: json
        data: '{}'
    docs: Update an existing asset.
  - info:
      name: Delete Asset
      type: http
    http:
      method: DELETE
      url: https://api.onupkeep.com/api/v2/assets/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Delete an asset from the system.
  - info:
      name: Record Asset Downtime
      type: http
    http:
      method: POST
      url: https://api.onupkeep.com/api/v2/assets/:id/downtime
      params:
      - name: id
        value: ''
        type: path
        description: Asset identifier
      body:
        type: json
        data: '{}'
    docs: Record a downtime event for an asset.
- info:
    name: Locations
    type: folder
  items:
  - info:
      name: List Locations
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/locations
      params:
      - name: page
        value: ''
        type: query
      - name: limit
        value: ''
        type: query
      - name: parentId
        value: ''
        type: query
        description: Filter by parent location
    docs: Retrieve a list of locations in the location hierarchy.
  - info:
      name: Create Location
      type: http
    http:
      method: POST
      url: https://api.onupkeep.com/api/v2/locations
      body:
        type: json
        data: '{}'
    docs: Create a new location.
  - info:
      name: Get Location
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/locations/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Retrieve details of a specific location.
  - info:
      name: Update Location
      type: http
    http:
      method: PATCH
      url: https://api.onupkeep.com/api/v2/locations/:id
      params:
      - name: id
        value: ''
        type: path
      body:
        type: json
        data: '{}'
    docs: Update an existing location.
  - info:
      name: Delete Location
      type: http
    http:
      method: DELETE
      url: https://api.onupkeep.com/api/v2/locations/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Delete a location.
- info:
    name: Parts
    type: folder
  items:
  - info:
      name: List Parts
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/parts
      params:
      - name: page
        value: ''
        type: query
      - name: limit
        value: ''
        type: query
    docs: Retrieve a list of parts and inventory items.
  - info:
      name: Create Part
      type: http
    http:
      method: POST
      url: https://api.onupkeep.com/api/v2/parts
      body:
        type: json
        data: '{}'
    docs: Create a new part or inventory item.
  - info:
      name: Get Part
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/parts/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Retrieve details of a specific part.
  - info:
      name: Update Part
      type: http
    http:
      method: PATCH
      url: https://api.onupkeep.com/api/v2/parts/:id
      params:
      - name: id
        value: ''
        type: path
      body:
        type: json
        data: '{}'
    docs: Update an existing part.
  - info:
      name: Delete Part
      type: http
    http:
      method: DELETE
      url: https://api.onupkeep.com/api/v2/parts/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Delete a part from inventory.
- info:
    name: Preventive Maintenance
    type: folder
  items:
  - info:
      name: List Preventive Maintenances
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/preventive-maintenances
      params:
      - name: page
        value: ''
        type: query
      - name: limit
        value: ''
        type: query
    docs: Retrieve a list of preventive maintenance schedules.
  - info:
      name: Create Preventive Maintenance
      type: http
    http:
      method: POST
      url: https://api.onupkeep.com/api/v2/preventive-maintenances
      body:
        type: json
        data: '{}'
    docs: Create a new preventive maintenance schedule.
  - info:
      name: Get Preventive Maintenance
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/preventive-maintenances/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Retrieve details of a specific preventive maintenance schedule.
  - info:
      name: Update Preventive Maintenance
      type: http
    http:
      method: PATCH
      url: https://api.onupkeep.com/api/v2/preventive-maintenances/:id
      params:
      - name: id
        value: ''
        type: path
      body:
        type: json
        data: '{}'
    docs: Update a preventive maintenance schedule.
  - info:
      name: Delete Preventive Maintenance
      type: http
    http:
      method: DELETE
      url: https://api.onupkeep.com/api/v2/preventive-maintenances/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Delete a preventive maintenance schedule.
- info:
    name: Purchase Orders
    type: folder
  items:
  - info:
      name: List Purchase Orders
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/purchase-orders
      params:
      - name: page
        value: ''
        type: query
      - name: limit
        value: ''
        type: query
      - name: status
        value: ''
        type: query
    docs: Retrieve a list of purchase orders.
  - info:
      name: Create Purchase Order
      type: http
    http:
      method: POST
      url: https://api.onupkeep.com/api/v2/purchase-orders
      body:
        type: json
        data: '{}'
    docs: Create a new purchase order.
  - info:
      name: Get Purchase Order
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/purchase-orders/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Retrieve details of a specific purchase order.
  - info:
      name: Update Purchase Order
      type: http
    http:
      method: PATCH
      url: https://api.onupkeep.com/api/v2/purchase-orders/:id
      params:
      - name: id
        value: ''
        type: path
      body:
        type: json
        data: '{}'
    docs: Update an existing purchase order.
  - info:
      name: Delete Purchase Order
      type: http
    http:
      method: DELETE
      url: https://api.onupkeep.com/api/v2/purchase-orders/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Delete a purchase order.
- info:
    name: Meters
    type: folder
  items:
  - info:
      name: List Meters
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/meters
      params:
      - name: page
        value: ''
        type: query
      - name: limit
        value: ''
        type: query
    docs: Retrieve a list of meters.
  - info:
      name: Create Meter
      type: http
    http:
      method: POST
      url: https://api.onupkeep.com/api/v2/meters
      body:
        type: json
        data: '{}'
    docs: Create a new meter for tracking asset readings.
  - info:
      name: Submit Meter Reading
      type: http
    http:
      method: POST
      url: https://api.onupkeep.com/api/v2/meters/:id/readings
      params:
      - name: id
        value: ''
        type: path
        description: Meter identifier
      body:
        type: json
        data: '{}'
    docs: Submit a new reading for a meter.
- info:
    name: Requests
    type: folder
  items:
  - info:
      name: List Requests
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/requests
      params:
      - name: page
        value: ''
        type: query
      - name: limit
        value: ''
        type: query
      - name: status
        value: ''
        type: query
    docs: Retrieve a list of maintenance requests.
  - info:
      name: Create Request
      type: http
    http:
      method: POST
      url: https://api.onupkeep.com/api/v2/requests
      body:
        type: json
        data: '{}'
    docs: Create a new maintenance request.
  - info:
      name: Get Request
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/requests/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Retrieve a specific maintenance request.
- info:
    name: Webhooks
    type: folder
  items:
  - info:
      name: List Webhooks
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/webhooks
    docs: Retrieve a list of webhook subscriptions.
  - info:
      name: Create Webhook
      type: http
    http:
      method: POST
      url: https://api.onupkeep.com/api/v2/webhooks
      body:
        type: json
        data: '{}'
    docs: Create a new webhook subscription for event notifications.
  - info:
      name: Get Webhook
      type: http
    http:
      method: GET
      url: https://api.onupkeep.com/api/v2/webhooks/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Retrieve details of a specific webhook subscription.
  - info:
      name: Update Webhook
      type: http
    http:
      method: PATCH
      url: https://api.onupkeep.com/api/v2/webhooks/:id
      params:
      - name: id
        value: ''
        type: path
      body:
        type: json
        data: '{}'
    docs: Update an existing webhook subscription.
  - info:
      name: Delete Webhook
      type: http
    http:
      method: DELETE
      url: https://api.onupkeep.com/api/v2/webhooks/:id
      params:
      - name: id
        value: ''
        type: path
    docs: Delete a webhook subscription.
bundled: true