UpKeep Authentication API

Session token management

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/upkeep-authentication-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

upkeep-authentication-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: UpKeep Assets Authentication API
  description: UpKeep is an asset operations management and CMMS (Computerized Maintenance Management System) platform. The UpKeep API provides programmatic access to work orders, assets, parts, locations, preventive maintenance schedules, purchase orders, meters, and webhooks for maintenance teams and facility managers.
  version: '2022-09-14'
  contact:
    name: UpKeep Developer Support
    url: https://developers.onupkeep.com/
  termsOfService: https://upkeep.com/terms/
servers:
- url: https://api.onupkeep.com/api/v2
  description: UpKeep Production API
security:
- SessionToken: []
tags:
- name: Authentication
  description: Session token management
paths:
  /auth:
    post:
      operationId: createSession
      summary: Create Session
      description: Authenticate with email and password to obtain a session token.
      tags:
      - Authentication
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - email
              - password
              properties:
                email:
                  type: string
                  format: email
                  description: User email address
                password:
                  type: string
                  description: User password
      security: []
      responses:
        '200':
          description: Session token created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
    delete:
      operationId: deleteSession
      summary: Delete Session
      description: Invalidate the current session token (logout).
      tags:
      - Authentication
      responses:
        '204':
          description: Session invalidated
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  responses:
    Unauthorized:
      description: Session token missing or invalid
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    Error:
      type: object
      properties:
        success:
          type: boolean
          example: false
        error:
          type: string
          description: Error message
    SessionResponse:
      type: object
      properties:
        success:
          type: boolean
        token:
          type: string
          description: Session token for subsequent API calls
        userId:
          type: string
  securitySchemes:
    SessionToken:
      type: apiKey
      in: header
      name: session-token
      description: Session token obtained from POST /auth