Escolar Documentos
Profissional Documentos
Cultura Documentos
Introduction
Authentication
Users
Customers
Vendors
Create a Vendor
Get All Vendors
Get a Specific Vendor
Update a Specific Vendor
Teams
Create a Team
Get All Teams
Get a Specific Team
Update a Specific Team
Delete a Specific Team
Get All Users for a Specific Team
Add User to a Specific Team
Removes User from a Specific Team
Assets
Locations
Parts
Create a Part
Get All Parts
Get a Specific Part
Update a Specific Part
Delete a Specific Part
Requests
Create a Request
Get All Requests
Get a Specific Request
Cancel a Specific Request
Delete a Specific Request
Work Orders
Preventative Maintenance
Work Order Schedule
Meters
Purchase Orders
Purchase Order Category
Reporting (BETA)
Common Use Cases
developers.onupkeep.com 1/86
6/5/2019 Introduction – UpKeep API Reference
Errors
Introduction
Welcome to the UpKeep API! You can use our API to control and gain access to data such as work orders and assets.
The UpKeep API is enabled only for accounts on the Business Plus Plan or Enterprise Plan. For more information click here.
Authentication
The UpKeep API uses session tokens to authorize API calls. Session tokens can be generated with the credentials of any user in your
account.
Log In
curl "https://api.onupkeep.com/api/v2/auth"
-X POST
-d email="user@onupkeep.com"
-d password="password"
{
"success": true,
"result": {
"sessionToken": "r:4a25eddbf5aj42jk323f1472724hc43f",
"expiresAt": "2018-12-31T00:00:00.000Z"
}
}
This endpoint returns a session token for a valid email and password.
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/auth/
REQUEST BODY
developers.onupkeep.com 2/86
6/5/2019 Introduction – UpKeep API Reference
Log Out
curl "https://api.onupkeep.com/api/v2/auth"
-X DELETE
-H "Session-Token: session_token_here"
{
"success": true,
"message": "session deleted"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/auth/
Users
Create a User
curl "https://api.onupkeep.com/api/v2/users/"
-H "Session-Token: session_token_here"
-X POST
-d email="user@onupkeep.com"
-d password="mypassword"
-d accountType="ADMIN"
-d firstName="Marty"
-d lastName="McFly"
-d phoneNumber="800-123-4567"
{
"success": true,
"result": {
"id": "fjQXLsOvG7",
"accountType": "ADMIN",
"email": "user@onupkeep.com",
"firstName": "Marty",
"lastName": "McFly",
"phoneNumber": "800-123-4567",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
}
HTTP REQUEST
developers.onupkeep.com 3/86
6/5/2019 Introduction – UpKeep API Reference
POST https://api.onupkeep.com/api/v2/users/
REQUEST BODY
Provide any of the below required fields and optional fields for the user.
accountType String true must be one of the following: ADMIN, TECH, VIEW_ONLY, REQUESTER, LIMITED_TECH
curl "https://api.onupkeep.com/api/v2/users/"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"results": [
{
"id": "fjQXLsOvG7",
"accountType": "ADMIN",
"email": "user@onupkeep.com",
"firstName": "Marty",
"lastName": "McFly",
"phoneNumber": "800-123-4567",
"userStatus": "on call",
"jobTitle": "Manager",
"dateOfLastLogin": "2018-05-22T03:05:27.262Z",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/users/
QUERY PARAMETERS
developers.onupkeep.com 4/86
6/5/2019 Introduction – UpKeep API Reference
email undefined If set the result will only include user with that email.
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt'. Second value: "ASC" or
orderBy
DESC "DESC".
curl "https://api.onupkeep.com/api/v2/users/<ID>"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"result": {
"id": "fjQXLsOvG7",
"accountType": "ADMIN",
"email": "user@onupkeep.com",
"firstName": "Marty",
"lastName": "McFly",
"phoneNumber": "800-123-4567",
"userStatus": "on call",
"jobTitle": "Manager",
"dateOfLastLogin": "2018-05-22T03:05:27.262Z",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/users/<ID>
URL PARAMETERS
Parameter Description
developers.onupkeep.com 5/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/users/<ID>"
-H "Session-Token: session_token_here"
-X PATCH
-d firstName="Doc"
{
"success": true,
"result": {
"id": "fjQXLsOvG7",
"accountType": "ADMIN",
"email": "user@onupkeep.com",
"firstName": "Marty",
"lastName": "McFly",
"phoneNumber": "800-123-4567",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
}
HTTP REQUEST
PATCH https://api.onupkeep.com/api/v2/users/<ID>
URL PARAMETERS
Parameter Description
REQUEST BODY
Provide any of the below fields of the user in the payload to update those specific fields. Null values are allowed to erase the value unless
otherwise stated.
Customers
Create a Customer
developers.onupkeep.com 6/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/customers/"
-H "Session-Token: session_token_here"
-X POST
-d name="Mark Boucher"
-d email="user@onupkeep.com"
-d phoneNumber="800-123-4567"
-d description="A1 sevices manager"
-d address="421 E Drachman, Hudson Street"
-d website="www.aoneserv.com"
-d type="Daily-User"
-d billingName="Mark Boucher Sr"
-d billingAddressLine1="345 B"
-d billingAddressLine2="Jackson Street"
-d billingAddressLine3="CA"
{
"success": true,
"result": {
"id": "fjQXLsOvG7",
"name": "Mark Boucher",
"email": "user@onupkeep.com",
"description": "A1 sevices manager",
"address": "421 E Drachman, Hudson Street",
"phoneNumber": "800-123-4567",
"website": "www.aoneserv.com",
"type": "Daily-User",
"billingName": "Mark Boucher Sr",
"billingAddressLine1": "345 B",
"billingAddressLine2": "Jackson Street",
"billingAddressLine3": "CA",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/customers/
REQUEST BODY
Provide any of the below required fields and optional fields for the customer.
developers.onupkeep.com 7/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/customers/"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"results": [
{
"id": "fjQXLsOvG7",
"name": "Mark Boucher",
"email": "user@onupkeep.com",
"description": "A1 sevices manager",
"address": "421 E Drachman, Hudson Street",
"phoneNumber": "800-123-4567",
"website": "www.aoneserv.com",
"type": "Daily-User",
"billingName": "Mark Boucher Sr",
"billingAddressLine1": "345 B",
"billingAddressLine2": "Jackson Street",
"billingAddressLine3": "CA",
"customFieldsCustomer": [
{
"id": "fjQXLsOvG7",
"name": "Title",
"value": "Manager",
"createdByUser": "lv6FZopMhz",
"updatedByUser": "lv6FZopMhz",
"customer": "fjQXLsOvG7",
"createdAt": "2018-03-20T05:47:32.690Z",
"updatedAt": "2018-03-20T05:47:32.690Z"
}
],
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/customers/
developers.onupkeep.com 8/86
6/5/2019 Introduction – UpKeep API Reference
QUERY PARAMETERS
name undefined If set the result will only include users with that name.
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt'. Second value: "ASC" or
orderBy
DESC "DESC".
curl "https://api.onupkeep.com/api/v2/customers/<ID>"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"result": {
"id": "fjQXLsOvG7",
"name": "Mark Boucher",
"email": "user@onupkeep.com",
"description": "A1 sevices manager",
"address": "421 E Drachman, Hudson Street",
"phoneNumber": "800-123-4567",
"website": "www.aoneserv.com",
"type": "Daily-User",
"billingName": "Mark Boucher Sr",
"billingAddressLine1": "345 B",
"billingAddressLine2": "Jackson Street",
"billingAddressLine3": "CA",
"customFieldsCustomer": [
{
"id": "fjQXLsOvG7",
"name": "Title",
"value": "Manager",
"createdByUser": "lv6FZopMhz",
"updatedByUser": "lv6FZopMhz",
"customer": "fjQXLsOvG7",
"createdAt": "2018-03-20T05:47:32.690Z",
"updatedAt": "2018-03-20T05:47:32.690Z"
}
],
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/customers/<ID>
developers.onupkeep.com 9/86
6/5/2019 Introduction – UpKeep API Reference
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/customer/<ID>"
-H "Session-Token: session_token_here"
-X PATCH
-d name="Rob"
{
"success": true,
"result": {
"id": "fjQXLsOvG7",
"name": "Rob",
"email": "user@onupkeep.com",
"description": "A1 sevices manager",
"address": "421 E Drachman, Hudson Street",
"phoneNumber": "800-123-4567",
"website": "www.aoneserv.com",
"type": "Daily-User",
"billingName": "Mark Boucher Sr",
"billingAddressLine1": "345 B",
"billingAddressLine2": "Jackson Street",
"billingAddressLine3": "CA",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
}
HTTP REQUEST
PATCH https://api.onupkeep.com/api/v2/customers/<ID>
URL PARAMETERS
Parameter Description
REQUEST BODY
Provide any of the below fields of the customer in the payload to update those specific fields. Null values are allowed to erase the value
unless otherwise stated.
developers.onupkeep.com 10/86
6/5/2019 Introduction – UpKeep API Reference
Vendors
Create a Vendor
curl "https://api.onupkeep.com/api/v2/vendors/"
-H "Session-Token: session_token_here"
-X POST
-d businessName="AVC Inc."
-d email="user@onupkeep.com"
-d phoneNumber="800-123-4567"
-d description="A1 sevices manager"
-d businessAddress="421 E Drachman, Hudson Street"
-d website="www.aoneserv.com"
-d type="Raw-Material"
-d mainPointOfContact="Mark Boucher"
{
"success": true,
"result": {
"id": "fjQXLsOvG7",
"businessName": "AVC Inc.",
"email": "user@onupkeep.com",
"description": "A1 sevices manager",
"businessAddress": "421 E Drachman, Hudson Street",
"phoneNumber": "800-123-4567",
"website": "www.aoneserv.com",
"type": "Raw-Material",
"mainPointOfContact": "Mark Boucher",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
developers.onupkeep.com 11/86
6/5/2019 Introduction – UpKeep API Reference
}
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/vendors/
REQUEST BODY
Provide any of the below required fields and optional fields for the vendor.
curl "https://api.onupkeep.com/api/v2/vendors/"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"results": [
{
"id": "fjQXLsOvG7",
"businessName": "AVC Inc.",
"email": "user@onupkeep.com",
"description": "A1 sevices manager",
"businessAddress": "421 E Drachman, Hudson Street",
"phoneNumber": "800-123-4567",
"website": "www.aoneserv.com",
"type": "Raw-Material",
"mainPointOfContact": "Mark Boucher",
"customFieldsVendor": [
{
"id": "4mFPJFLwxa",
"name": "Title",
"value": "Manager",
developers.onupkeep.com 12/86
6/5/2019 Introduction – UpKeep API Reference
"createdByUser": "lv6FZopMhz",
"updatedByUser": "lv6FZopMhz",
"vendor": "fjQXLsOvG7",
"createdAt": "2018-03-20T05:53:25.017Z",
"updatedAt": "2018-03-20T05:53:25.017Z"
}
],
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/vendors/
QUERY PARAMETERS
businessName undefined If set the result will only include vendors with that businessName.
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt'. Second value: "ASC" or
orderBy
DESC "DESC".
curl "https://api.onupkeep.com/api/v2/vendors/<ID>"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"result": {
"id": "fjQXLsOvG7",
"businessName": "AVC Inc.",
"email": "user@onupkeep.com",
"description": "A1 sevices manager",
"businessAddress": "421 E Drachman, Hudson Street",
"phoneNumber": "800-123-4567",
"website": "www.aoneserv.com",
"type": "Raw-Material",
"mainPointOfContact": "Mark Boucher",
"customFieldsVendor": [
{
"id": "4mFPJFLwxa",
"name": "Title",
"value": "Manager",
"createdByUser": "lv6FZopMhz",
developers.onupkeep.com 13/86
6/5/2019 Introduction – UpKeep API Reference
"updatedByUser": "lv6FZopMhz",
"vendor": "fjQXLsOvG7",
"createdAt": "2018-03-20T05:53:25.017Z",
"updatedAt": "2018-03-20T05:53:25.017Z"
}
],
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/vendors/<ID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/vendors/<ID>"
-H "Session-Token: session_token_here"
-X PATCH
-d businessName="Doc Inc"
{
"success": true,
"result": {
"id": "fjQXLsOvG7",
"businessName": "Doc Inc.",
"email": "user@onupkeep.com",
"description": "A1 sevices manager",
"businessAddress": "421 E Drachman, Hudson Street",
"phoneNumber": "800-123-4567",
"website": "www.aoneserv.com",
"type": "Raw-Material",
"mainPointOfContact": "Mark Boucher",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
}
HTTP REQUEST
PATCH https://api.onupkeep.com/api/v2/vendors/<ID>
URL PARAMETERS
Parameter Description
developers.onupkeep.com 14/86
6/5/2019 Introduction – UpKeep API Reference
Parameter Description
REQUEST BODY
Provide any of the below fields of the vendor in the payload to update those specific fields. Null values are allowed to erase the value unless
otherwise stated.
Teams
Create a Team
curl "https://api.onupkeep.com/api/v2/teams/"
-H "Session-Token: session_token_here"
-X POST
-d name="Maintenance Team"
{
"success": true,
"result": {
"name": "Team Doc",
"description": "Marty! I need you to go back with me! Back to the future!",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
}
HTTP REQUEST
developers.onupkeep.com 15/86
6/5/2019 Introduction – UpKeep API Reference
POST https://api.onupkeep.com/api/v2/teams/
REQUEST BODY
Provide any of the below required fields and optional fields for the team.
curl "https://api.onupkeep.com/api/v2/teams/"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"results": [
{
"id": "fjQXLsOvG7",
"name": "Team Doc",
"description": "Marty! I need you to go back with me! Back to the future!",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/teams/
QUERY PARAMETERS
name undefined If set the result will only include teams with that name.
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt'. Second value: "ASC" or
orderBy
DESC "DESC".
developers.onupkeep.com 16/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/teams/<ID>"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"result": {
"id": "fjQXLsOvG7",
"name": "Team Doc",
"description": "Marty! I need you to go back with me! Back to the future!",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/teams/<ID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/users/<ID>"
-H "Session-Token: session_token_here"
-X PATCH
-d name="Team Marty"
{
"success": true,
"result": {
"id": "fjQXLsOvG7",
"name": "Team Marty",
"description": "Marty! I need you to go back with me! Back to the future!",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
}
developers.onupkeep.com 17/86
6/5/2019 Introduction – UpKeep API Reference
HTTP REQUEST
PATCH https://api.onupkeep.com/api/v2/teams/<ID>
URL PARAMETERS
Parameter Description
REQUEST BODY
Provide any of the below fields of the team in the payload to update those specific fields. Null values are allowed to erase the value unless
otherwise stated.
curl "https://api.onupkeep.com/api/v2/teams/<ID>"
-H "Session-Token: session_token_here"
-X DELETE
{
"success": true,
"message": "1 team deleted"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/teams/<ID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/teams/<teamID>/users"
-H "Session-Token: session_token_here"
developers.onupkeep.com 18/86
6/5/2019 Introduction – UpKeep API Reference
-X GET
{
"success": true,
"results": [
{
"id": "fjQXLsOvG7",
"accountType": "ADMIN",
"email": "user@onupkeep.com",
"firstName": "Marty",
"lastName": "McFly",
"phoneNumber": "800-123-4567",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/teams/<teamID>/users
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/teams/<teamID>/users/<userID>"
-H "Session-Token: session_token_here"
-X POST
{
"success": true,
"message": "1 user added to team <teamID>"
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/teams/<teamID>/users/<userID>
URL PARAMETERS
Parameter Description
developers.onupkeep.com 19/86
6/5/2019 Introduction – UpKeep API Reference
Parameter Description
curl "https://api.onupkeep.com/api/v2/teams/<teamID>/users/<userID>"
-H "Session-Token: session_token_here"
-X DELETE
{
"success": true,
"message": "1 user removed from team <teamID>"
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/teams/<teamID>/users/<userID>
URL PARAMETERS
Parameter Description
Assets
Create an Asset
curl "https://api.onupkeep.com/api/v2/assets/"
-H "Session-Token: session_token_here"
-X POST
-d name="The Deluxe Power Generator"
-d UPCNumber="S5614B09118"
-d model="Deluxe 5500"
developers.onupkeep.com 20/86
6/5/2019 Introduction – UpKeep API Reference
{
"success": true,
"result": [
{
"id": "fjQXLsOvG7",
"UPCNumber": "S5614B09118",
"additionalInformation": "2 feet by 2 feet",
"model": "Deluxe 5500",
"name": "The Ultra Power Generator",
"notes": "Oldest generator in use",
"serial": "1234567",
"location": "OPkIOYYZ0F",
"image": {
"name": "image_generator_001.jpg",
"url": "https://upkeep-production.s3.amazonaws.com/image_generator_001.jpg"
},
"status": "active",
"description": "The Generator Powering Life Support for the Space Station",
"category": "Generators",
"assignedToUsername": "abc@def.com",
"assignedToUser": "BZuHycQMog",
"createdByUsername": "zys@abce.com",
"createdByUser": "DNbSREeodF",
"updatedAt": "2017-11-16T15:01:01",
"createdAt": "2017-11-16T15:01:01"
}
]
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/assets/
REQUEST BODY
Provide any of the below required fields and optional fields for the asset.
category String, one of the set categories on your UpKeep account false
developers.onupkeep.com 21/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/assets"
-H "Session-Token: session_token_here"
{
"success": true,
"results": [
{
"id": "fjQXLsOvG7",
"UPCNumber": "S5614B09118",
"additionalInformation": "2 feet by 2 feet",
"model": "Deluxe 5500",
"name": "The Ultra Power Generator",
"notes": "Oldest generator in use",
"numberOfIncompleteWorkOrders": 55,
"serial": "1234567",
"location": "OPkIOYYZ0F",
"image": {
"name": "image_generator_001.jpg",
"url": "https://upkeep-production.s3.amazonaws.com/image_generator_001.jpg"
},
"status": "active",
"description": "The Generator Powering Life Support for the Space Station",
"category": "Generators",
"assignedToUsername": "abc@def.com",
"assignedToUser": "BZuHycQMog",
"createdByUsername": "zys@abce.com",
"createdByUser": "DNbSREeodF",
"checkInProcedure": "Connect generator",
"checkOutProcedure": "Disconnect Generator",
"availabilityStatus": "available",
"downtimeStatus": "available",
"availabilityTrackingOn": true,
"updatedAt": "2017-11-16T15:01:01",
"createdAt": "2017-11-16T15:01:01"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/assets
QUERY PARAMETERS
name undefined If set, the result will only include assets with that name.
UPCNumber undefined If set, the result will only include assets with this UPCNumber.
model undefined If set, the result will only include assets with this model.
serial undefined If set, the result will only include assets with this serial number.
developers.onupkeep.com 22/86
6/5/2019 Introduction – UpKeep API Reference
location undefined (ID) If set, the result will only include assets belonging to this location.
status undefined If set, the result will only include assets with this status.
category undefined If set, the result will only include assets with this category.
assignedToUser undefined (ID) If set, the result will only include assets assigned to this user.
createdByUser undefined (ID) If set, the result will only include assets created by this user.
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt'. Second value: "ASC"
orderBy
DESC or "DESC".
curl "https://api.onupkeep.com/api/v2/assets/fjQXLsOvG7"
-H "Session-Token: session_token_here"
{
"success": true,
"result": [
{
"id": "fjQXLsOvG7",
"UPCNumber": "S5614B09118",
"additionalInformation": "2 feet by 2 feet",
"model": "Deluxe 5500",
"name": "The Ultra Power Generator",
"notes": "Oldest generator in use",
"numberOfIncompleteWorkOrders": 55,
"serial": "1234567",
"location": "OPkIOYYZ0F",
"image": {
"name": "image_generator_001.jpg",
"url": "https://upkeep-production.s3.amazonaws.com/image_generator_001.jpg"
},
"status": "active",
"description": "The Generator Powering Life Support for the Space Station",
"category": "Generators",
"assignedToUsername": "abc@def.com",
"assignedToUser": "BZuHycQMog",
"createdByUsername": "zys@abce.com",
"createdByUser": "DNbSREeodF",
"checkInProcedure": "Connect generator",
"checkOutProcedure": "Disconnect Generator",
"availabilityStatus": "available",
"downtimeStatus": "available",
"availabilityTrackingOn": true,
developers.onupkeep.com 23/86
6/5/2019 Introduction – UpKeep API Reference
"subAssets": [
"z40xOYM9yd"
],
"parts": [
"ydOS2PdR3a"
],
"files": [
"sKrlT2f3mf",
"Vgwf41LLg1"
],
"formItems": [
"Ia536KS4RZ"
],
"customFieldsAsset": [
{
"id": "AI5uBGp7nz",
"name": "Width",
"value": "10",
"asset": "fjQXLsOvG7",
"unit": "cm",
"createdAt": "2018-03-20T06:54:48.325Z",
"updatedAt": "2018-03-20T06:54:48.325Z"
}
],
"updatedAt": "2017-11-16T15:01:01",
"createdAt": "2017-11-16T15:01:01"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/assets/<ID>
URL PARAMETERS
Parameter Description
QUERY PARAMETERS
curl "https://api.onupkeep.com/api/v2/assets/fjQXLsOvG7"
-H "Session-Token: session_token_here"
-X PATCH
-d name="The Amazing Power Generator"
developers.onupkeep.com 24/86
6/5/2019 Introduction – UpKeep API Reference
{
"success": true,
"result": [
{
"id": "fjQXLsOvG7",
"UPCNumber": "S5614B09118",
"additionalInformation": "2 feet by 2 feet",
"model": "Deluxe 5500",
"name": "The Amazing Power Generator",
"notes": "Oldest generator in use",
"numberOfIncompleteWorkOrders": 55,
"serial": "1234567",
"location": "OPkIOYYZ0F",
"image": {
"name": "image_generator_001.jpg",
"url": "https://upkeep-production.s3.amazonaws.com/image_generator_001.jpg"
},
"status": "active",
"description": "The Generator Powering Life Support for the Space Station",
"category": "Generators",
"assignedToUsername": "abc@def.com",
"assignedToUser": "BZuHycQMog",
"createdByUsername": "zys@abce.com",
"createdByUser": "DNbSREeodF",
"updatedAt": "2017-11-16T15:01:01",
"createdAt": "2017-11-16T15:01:01"
}
]
}
HTTP REQUEST
PATCH https://api.onupkeep.com/api/v2/assets/<ID>
URL PARAMETERS
Parameter Description
REQUEST BODY
Provide any of the below fields of the asset in the payload to update those specific fields. Null values are allowed to erase the value unless
otherwise stated.
Parameter Type
UPCNumber String
additionalInformation String
model String
name String
notes String
serial String
developers.onupkeep.com 25/86
6/5/2019 Introduction – UpKeep API Reference
Parameter Type
description String
curl "https://api.onupkeep.com/api/v2/assets/jQXLsOvG7"
-X DELETE
-H "Session-Token: session_token_here"
{
"success": true,
"message": "1 asset deleted"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/assets/<ID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/assets/<assetID>/users/<userID>"
-H "Session-Token: session_token_here"
-X POST
{
"success": true,
"message": "user <userID> assigned to asset <assetID>"
}
developers.onupkeep.com 26/86
6/5/2019 Introduction – UpKeep API Reference
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/assets/<assetID>/users/<userID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/assets/<assetID>/users/<userID>"
-H "Session-Token: session_token_here"
-X DELETE
{
"success": true,
"message": "user <userID> removed from asset <assetID>"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/assets/<assetID>/users/<userID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/assets/<assetID>/teams/<teamID>"
-H "Session-Token: session_token_here"
-X POST
developers.onupkeep.com 27/86
6/5/2019 Introduction – UpKeep API Reference
{
"success": true,
"message": "team <teamID> assigned to asset <assetID>"
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/assets/<assetID>/teams/<teamID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/assets/<assetID>/teams/<teamID>"
-H "Session-Token: session_token_here"
-X DELETE
{
"success": true,
"message": "team <teamID> removed from asset <assetID>"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/assets/<assetID>/teams/<teamID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/assets/<assetID>/customers/<customerID>"
-H "Session-Token: session_token_here"
developers.onupkeep.com 28/86
6/5/2019 Introduction – UpKeep API Reference
-X POST
{
"success": true,
"message": "customer <customerID> assigned to asset <assetID>"
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/assets/<assetID>/customers/<customerID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/assets/<assetID>/customers/<customerID>"
-H "Session-Token: session_token_here"
-X DELETE
{
"success": true,
"message": "customer <customerID> removed from asset <assetID>"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/assets/<assetID>/customers/<customerID>
URL PARAMETERS
Parameter Description
developers.onupkeep.com 29/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/assets/<assetID>/vendors/<vendorID>"
-H "Session-Token: session_token_here"
-X POST
{
"success": true,
"message": "vendor <vendorID> assigned to asset <assetID>"
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/assets/<assetID>/vendors/<vendorID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/assets/<assetID>/vendors/<vendorID>"
-H "Session-Token: session_token_here"
-X DELETE
{
"success": true,
"message": "vendor <vendorID> removed from asset <assetID>"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/assets/<assetID>/vendors/<vendorID>
URL PARAMETERS
Parameter Description
developers.onupkeep.com 30/86
6/5/2019 Introduction – UpKeep API Reference
Parameter Description
Locations
Create a Location
curl "https://api.onupkeep.com/api/v2/locations/"
-H "Session-Token: session_token_here"
-X POST
-d name="Sherlock Homes' House"
-d address="221B Baker Street, London NW1 6XE, UK"
-d longitude=51.523767
-d latitude=-0.1585557
-d hideMap="0"
{
"success": true,
"result": [
{
"id": "jpSMgHPr11",
"createdByUser": "lv6FZopMhz",
"createdByUsername": "test@onupkeep.com",
"name": "Sherlock Homes' House",
"address": "221B Baker Street, London NW1 6XE, UK",
"longitude": 51.523767,
"latitude": -0.1585557,
"hideMap": "0",
"createdAt": "2017-10-23T23:51:58.098Z",
"updatedAt": "2017-10-27T20:36:24.563Z"
}
]
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/locations/
REQUEST BODY
Provide any of the below required fields and optional fields for the asset.
developers.onupkeep.com 31/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/locations"
-H "Session-Token: session_token_here"
{
"success": true,
"results": [
{
"id": "jpSMgHPr11",
"createdByUser": "lv6FZopMhz",
"createdByUsername": "test@onupkeep.com",
"name": "Tutorial: Meeting Room",
"address": "11087 Sunset Blvd, Los Angeles, CA 90049, USA",
"longitude": -118.25525040000002,
"latitude": 34.07583059999999,
"hideMap": "0",
"createdAt": "2017-10-23T23:51:58.098Z",
"updatedAt": "2017-10-27T20:36:24.563Z"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/locations
QUERY PARAMETERS
name undefined If set, the result will only include locations with that name.
createdByUser undefined (ID) If set, the result will only include locations created by this user.
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt'. Second value: "ASC" or
orderBy
DESC "DESC".
developers.onupkeep.com 32/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/locations/fjQXLsOvG7"
-H "Session-Token: session_token_here"
{
"success": true,
"result": {
"id": "jpSMgHPr11",
"createdByUser": "lv6FZopMhz",
"createdByUsername": "test@onupkeep.com",
"name": "Meeting Room",
"address": "11087 Sunset Blvd, Los Angeles, CA 90049, USA",
"longitude": -118.25525040000002,
"latitude": 34.07583059999999,
"hideMap": "0",
"subLocations": [
"UgKWefUzv6"
],
"files": [
"e1HbFRtKAV",
"tzfnyFGBMm"
],
"customFieldsLocation": [
{
"id": "AvmCM4NHrI",
"name": "Floor",
"value": "1st",
"location": "rJm0aQBpLC",
"unit": "g",
"user": "7w6jIHFdEr",
"createdAt": "2018-05-17T07:38:33.619Z",
"updatedAt": "2018-05-17T07:38:33.619Z"
}
],
"createdAt": "2017-10-23T23:51:58.098Z",
"updatedAt": "2017-10-27T20:36:24.563Z"
}
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/locations/<ID>
URL PARAMETERS
Parameter Description
QUERY PARAMETERS
developers.onupkeep.com 33/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/locations/fjQXLsOvG7"
-H "Session-Token: session_token_here"
-X PATCH
-d name="Conference Room"
{
"success": true,
"result": [
{
"id": "jpSMgHPr11",
"createdByUser": "lv6FZopMhz",
"createdByUsername": "test@onupkeep.com",
"name": "Conference Room",
"address": "11087 Sunset Blvd, Los Angeles, CA 90049, USA",
"longitude": -118.25525040000002,
"latitude": 34.07583059999999,
"hideMap": "0",
"createdAt": "2017-10-23T23:51:58.098Z",
"updatedAt": "2017-10-27T20:36:24.563Z"
}
]
}
HTTP REQUEST
PATCH https://api.onupkeep.com/api/v2/locations/<ID>
URL PARAMETERS
Parameter Description
REQUEST BODY
Provide any of the below fields of the location in the payload to update those specific fields. Null values are allowed to erase the value
unless otherwise stated.
Parameter Type
name String
address String
longitude Float
latitude Float
developers.onupkeep.com 34/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/locations/jQXLsOvG7"
-X DELETE
-H "Session-Token: session_token_here"
{
"success": true,
"message": "1 location deleted"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/locations/<ID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/locations/<locationID>/users/<userID>"
-H "Session-Token: session_token_here"
-X POST
{
"success": true,
"message": "user <userID> assigned to location <locationID>"
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/locations/<locationID>/users/<userID>
URL PARAMETERS
Parameter Description
developers.onupkeep.com 35/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/locations/<locationID>/users/<userID>"
-H "Session-Token: session_token_here"
-X DELETE
{
"success": true,
"message": "user <userID> removed from location <locationID>"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/locations/<locationID>/users/<userID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/locations/<locationID>/teams/<teamID>"
-H "Session-Token: session_token_here"
-X POST
{
"success": true,
"message": "team <teamID> assigned to location <locationID>"
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/locations/<locationID>/teams/<teamID>
URL PARAMETERS
Parameter Description
developers.onupkeep.com 36/86
6/5/2019 Introduction – UpKeep API Reference
Parameter Description
curl "https://api.onupkeep.com/api/v2/locations/<locationID>/teams/<teamID>"
-H "Session-Token: session_token_here"
-X DELETE
{
"success": true,
"message": "team <teamID> removed from location <locationID>"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/locations/<locationID>/teams/<teamID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/locations/<locationID>/customers/<customerID>"
-H "Session-Token: session_token_here"
-X POST
{
"success": true,
"message": "customer <customerID> assigned to location <locationID>"
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/locations/<locationID>/customers/<customerID>
developers.onupkeep.com 37/86
6/5/2019 Introduction – UpKeep API Reference
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/locations/<locationID>/customers/<customerID>"
-H "Session-Token: session_token_here"
-X DELETE
{
"success": true,
"message": "customer <customerID> removed from location <locationID>"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/locations/<locationID>/customers/<customerID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/locations/<locationID>/vendors/<vendorID>"
-H "Session-Token: session_token_here"
-X POST
{
"success": true,
"message": "vendor <vendorID> assigned to location <locationID>"
}
POST https://api.onupkeep.com/api/v2/locations/<locationID>/vendors/<vendorID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/locations/<locationID>/vendors/<vendorID>"
-H "Session-Token: session_token_here"
-X DELETE
{
"success": true,
"message": "vendor <vendorID> removed from location <locationID>"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/locations/<locationID>/vendors/<vendorID>
URL PARAMETERS
Parameter Description
Parts
Create a Part
curl "https://api.onupkeep.com/api/v2/parts/"
-H "Session-Token: session_token_here"
-X POST
-d name="Flux Capacitor"
-d description="This is what makes time travel possible."
-d cost=88.00
developers.onupkeep.com 39/86
6/5/2019 Introduction – UpKeep API Reference
-d quantity=15
-d minimumQuantity=1
-d serial=40161502
-d category="Compressor",
-d location="jmHFWGVgd1"
{
"success": true,
"result": [
{
"id": "1YHUWGVgdC",
"name": "Flux Capacitor",
"description": "This is what makes time travel possible.",
"cost": "88.00",
"quantity": "15",
"minimumQuantity": "1",
"serial": "40161502",
"category": "Compressor",
"location": "jmHFWGVgd1",
"createdByUser": "pCmWGVgfW",
"createdAt": "2017-10-23T23:51:58.097Z",
"updatedAt": "2017-10-23T23:51:58.097Z"
}
]
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/parts/
REQUEST BODY
Provide any of the below required fields and optional fields for the part.
developers.onupkeep.com 40/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/parts"
-H "Session-Token: session_token_here"
{
"success": true,
"results": [
{
"id": "1YHUWGVgdC",
"image": {
"name": "dfimg_part_du.jpg",
"url": "https://upkeep-production.s3.amazonaws.com/dfimg_part_du.jpg"
},
"name": "Flux Capacitor",
"description": "This is what makes time travel possible.",
"cost": "88.00",
"quantity": "5",
"minimumQuantity": "1",
"serial": "40161502",
"area": "Mark street",
"details": "additional details",
"category": "Filter",
"location": "jmHFWGVgd1",
"createdByUser": "pCmWGVgfW",
"createdAt": "2017-10-23T23:51:58.097Z",
"updatedAt": "2017-10-23T23:51:58.097Z"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/parts
QUERY PARAMETERS
name undefined If set the result will only include parts with that name.
category undefined If set the result will only include parts with that category.
location undefined (ID) If set the result will only include parts belonging to this location.
createdByUser undefined (ID) If set the result will only include parts created by this user.
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt'. Second value: "ASC" or
orderBy
DESC "DESC".
developers.onupkeep.com 41/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/parts/1YHUWGVgdC"
-H "Session-Token: session_token_here"
{
"success": true,
"result": {
"id": "1YHUWGVgdC",
"image": {
"name": "dfimg_part_du.jpg",
"url": "https://upkeep-production.s3.amazonaws.com/dfimg_part_du.jpg"
},
"name": "Flux Capacitor",
"description": "This is what makes time travel possible.",
"cost": "88.00",
"quantity": "5",
"minimumQuantity": "1",
"serial": "40161502",
"area": "Mark street",
"details": "additional details",
"category": "Filter",
"location": "jmHFWGVgd1",
"createdByUser": "pCmWGVgfW",
"files": [
"MUfUCa0JBo",
"FGyvo6raqZ"
],
"customFieldsPart": [
{
"id": "axdcV3NKaB",
"name": "Manufactured By",
"value": "ABC Parts Inc",
"partInventory": "ydOS2PdR3a",
"unit": "cxcxc",
"user": "7w6jIHFdEr",
"createdAt": "2018-05-18T09:37:21.593Z",
"updatedAt": "2018-05-18T09:37:21.593Z"
}
]
"createdAt": "2017-10-23T23:51:58.097Z",
"updatedAt": "2017-10-23T23:51:58.097Z"
}
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/parts/<ID>
URL PARAMETERS
Parameter Description
QUERY PARAMETERS
developers.onupkeep.com 42/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/parts/1YHUWGVgdC"
-H "Session-Token: session_token_here"
-X PATCH
-d quantity=100
{
"success": true,
"result": [
{
"id": "1YHUWGVgdC",
"image": {
"name": "dfimg_part_du.jpg",
"url": "https://upkeep-production.s3.amazonaws.com/dfimg_part_du.jpg"
},
"name": "Flux Capacitor",
"description": "This is what makes time travel possible.",
"cost": "88.00",
"quantity": "100",
"minimumQuantity": "1",
"serial": "40161502",
"area": "Mark street",
"details": "additional details",
"category": "Filter",
"location": "jmHFWGVgd1",
"createdByUser": "pCmWGVgfW",
"createdAt": "2017-10-23T23:51:58.097Z",
"updatedAt": "2017-10-23T23:51:58.097Z"
}
]
}
HTTP REQUEST
PATCH https://api.onupkeep.com/api/v2/parts/<ID>
URL PARAMETERS
Parameter Description
REQUEST BODY
Provide any of the below fields of the part in the payload to update those specific fields. Null values are allowed to erase the value unless
otherwise stated.
developers.onupkeep.com 43/86
6/5/2019 Introduction – UpKeep API Reference
Parameter Type
name String
description String
cost Float
quantity Number
minimumQuantity Number
serial String
area String
details String
category String
curl "https://api.onupkeep.com/api/v2/parts/jQXLsOvG7"
-X DELETE
-H "Session-Token: session_token_here"
{
"success": true,
"message": "1 part deleted"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/parts/<ID>
URL PARAMETERS
Parameter Description
Requests
developers.onupkeep.com 44/86
6/5/2019 Introduction – UpKeep API Reference
Create a Request
curl "https://api.onupkeep.com/api/v2/requests/"
-H "Session-Token: session_token_here"
-X POST
-d title="Repair sink"
-d description="Sink broke yesterday"
-d team="hp8LFaUelk"
-d location="yuhLKaHelk"
-d asset="pLkyFaFelk"
-d category="Electrical"
-d assignedToUser="cCkyAfIelk"
-d dueDate=1515482422310
{
"success": true,
"result": {
"id": "9shLaaHeMQ",
"title": "Repair sink",
"description": "Sink broke yesterday",
"location": "yuhLKaHelk",
"asset": "pLkyFaFelk",
"team": "pLykFaFelk",
"category": "Electrical",
"assignedToUser": "cCkyAfIelk",
"assignedToUsername" : "satya",
"status": "open",
"requestedByUser": "8PhLFaHelk",
"dueDate": "2018-01-09T07:20:22.310Z",
"createdAt": "2018-01-09T06:24:16.297Z",
"updatedAt": "2018-01-09T06:24:16.297Z"
}
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/requests/
REQUEST BODY
Provide any of the below required fields and optional fields for the user.
developers.onupkeep.com 45/86
6/5/2019 Introduction – UpKeep API Reference
category String false Can not be a random string, check for the allowed category
1. If your account has a Zapier integration enabled, data will be sent to Zapier for the new request trigger
curl "https://api.onupkeep.com/api/v2/requests"
-H "Session-Token: session_token_here"
{
"success": true,
"results": [
{
"id": "hn5PE6HXAG",
"title": "Broken light in the production room",
"description": "There is a light that is out in the production room. Hint: Approving this request will move it to the work orders section",
"image": {
"__type": "File",
"name": "dfimg_request2.jpg",
"url": "https://demo-api-upkeep.s3.amazonaws.com/dfimg_request2.jpg"
},
"requestedByUser": "8PhLFaHelk",
"createdAt": "2018-01-09T03:43:23.769Z",
"updatedAt": "2018-01-09T03:43:23.769Z"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/requests
QUERY PARAMETERS
(ID) id of the upkeep user who created the request.if provided will show only requests requested
requestedByUser undefined
by the user.
(String) email id of requester(request via request portal/via email). if provided will show only
publicRequesterEmail undefined requests requested by the user. request will have either requestedByUser or publicRequesterEmail
set.
developers.onupkeep.com 46/86
6/5/2019 Introduction – UpKeep API Reference
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt'. Second value: "ASC"
orderBy
DESC or "DESC".
curl "https://api.onupkeep.com/api/v2/requests/HW2I379ErS"
-H "Session-Token: session_token_here"
{
"success": true,
"result": {
"id": "hn5PE6HXAG",
"title": "Tutorial: Broken light in the production room",
"description": "There is a light that is out in the production room. Hint: Approving this request will move it to the work orders section",
"image": {
"__type": "File",
"name": "dfimg_request2.jpg",
"url": "https://demo-api-upkeep.s3.amazonaws.com/dfimg_request2.jpg"
},
"publicRequesterEmail": "test@abc.com",
"createdAt": "2018-01-09T03:43:23.769Z",
"updatedAt": "2018-01-09T03:43:23.769Z"
}
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/requests/<ID>
URL PARAMETERS
Parameter Description
QUERY PARAMETERS
developers.onupkeep.com 47/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/requests/jQXLsOvG7/cancel"
-X DELETE
-H "Session-Token: session_token_here"
{
"success": true,
"message": "1 request cancelled"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/requests/<ID>/cancel
URL PARAMETERS
Parameter Description
1. The requester will be sent an email informing him or her about request cancellation.
curl "https://api.onupkeep.com/api/v2/requests/jQXLsOvG7"
-X DELETE
-H "Session-Token: session_token_here"
{
"success": true,
"message": "1 request deleted"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/requests/<ID>
URL PARAMETERS
developers.onupkeep.com 48/86
6/5/2019 Introduction – UpKeep API Reference
Parameter Description
Work Orders
curl "https://api.onupkeep.com/api/v2/work-orders/"
-H "Session-Token: session_token_here"
-X POST
-d title="Repair sink"
-d description="Sink broke yesterday"
-d priority=1
-d dueDate=1515482422310
-d asset="gDK45aHe12"
-d location="MD565aHenL"
-d assignedToUser="lv6FZopMhz"
-d estimatedDurationInHours=5
-d category="Damage"
{
"success": true,
"result": {
"id": "6yDTWLAEmh",
"workOrderNo": "006",
"title": "Repair sink",
"description": "Sink broke yesterday",
"status": "open",
"category": "Damage",
"dueDate": "2018-01-09T07:20:22.310Z",
"assignedToUser": "vk6BHzQVCX",
"assignedToUsername": "test@onupkeep.com",
"asset": "knyWfDnXWo",
"location": "cXRAu708NU",
"assignedByUser": "lv6FZopMhz",
"assignedByUsername": "test@onupkeep.com",
"estimatedDurationInHours" : 5,
"priority": 1,
"createdAt": "2018-01-09T07:56:53.743Z",
"updatedAt": "2018-01-09T07:56:53.743Z"
}
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/work-orders/
REQUEST BODY
Provide any of the below required fields and optional fields for the user.
developers.onupkeep.com 49/86
6/5/2019 Introduction – UpKeep API Reference
one of the set categories for Work Orders on your account, including the default
category String false
ones
1. If your account has a Zapier integration enabled, data will be sent to Zapier for the new Work Order trigger.
2. If a user is assigned to the work order, an email will be sent to him or her. If it is assigned to no one, emails will be sent to admins.
curl "https://api.onupkeep.com/api/v2/work-orders"
-H "Session-Token: session_token_here"
{
"success": true,
"results": [
{
"id": "HW2I379ErS",
"workOrderNo": "014",
"title": "Replace the warp drive on the fusion reactor",
"description": "Warp drive has been malfunctioning, check the coils that generate the warp field.",
"status": "onHold",
"dueDate": "2017-12-06T19:23:09.162Z",
"dateCompleted": "2017-12-06T19:23:09.162Z",
"assignedToUser": "5ZXaLRZ40I",
"assignedToUsername": "5ZXaLRZ40I",
"completedByUser": "5ZXaLRZ40I",
"asset": "kW6I379ELS",
"location": "Mkr457Gkk3",
"team": "PD6I909nLS",
"time": "20",
"cost": "25",
"category": "Electrical",
"formItems": [
developers.onupkeep.com 50/86
6/5/2019 Introduction – UpKeep API Reference
"YChe6OjzHC",
"FuJBoOf8Di",
"e2iFG6t7I9"
],
"assignedByUser": "5ZXaLRZ40I",
"assignedByUsername": "test@onupkeep.com",
"priority": "1",
"signatureImage": {
"__type": "File",
"name": "da696460251395f712d5b83d948a360c_2cd43b_434c5b3602af429f927d290cbc27d790_mv2.png",
"url": "https://demo-api-upkeep.s3.amazonaws.com/da696460251395f712d5b83d948a360c_2cd43b_434c5b3602af429f927d290cbc27d790_mv2.png"
},
"requiresSignature": 1,
"category": "Electrical",
"image": {
"__type": "File",
"name": "dfimg_request2.jpg",
"url": "https://demo-api-upkeep.s3.amazonaws.com/dfimg_request2.jpg"
},
"parts": [
"sDmjnbbpAL",
"QhWwJbfGb4"
],
"image2": {...},
"image3": {...},
"image4": {...},
"image5": {...},
"publicRequesterEmail": "test@onupkeep.com",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/work-orders
QUERY PARAMETERS
title undefined If set, only work orders with this title will be included.
If set to "0", the result will only include work orders that have not been completed. If set to "1",
isComplete undefined
the result will only include work orders that have been completed.
If set, the work orders fetched will be of the specified status only(allowed values
status undefined
'open','onHold','inProgress', 'complete')
asset undefined (ID) If set, only work orders associated with this asset will be included.
location undefined (ID) If set, only work orders belonging to this location will be included.
category undefined If set, only work orders with this category will be included.
assignedToUser undefined (ID) If set, only work orders assigned to this user will be included.
assignedByUser undefined (ID) If set, only work orders assigned by this user will be included.
publicRequesterEmail undefined If set, only work orders created by this email on the public request portal will be included.
developers.onupkeep.com 51/86
6/5/2019 Introduction – UpKeep API Reference
(Array) send 'asset', 'location', 'assignedToUser', 'team', 'formItems', 'parts' to expand respective
includes undefined
object.
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt', 'dueDate',
orderBy
DESC 'dateCompleted'. Second value: "ASC" or "DESC".
NOTE
curl "https://api.onupkeep.com/api/v2/work-orders/HW2I379ErS"
-H "Session-Token: session_token_here"
{
"success": true,
"result": {
"id": "HW2I379ErS",
"workOrderNo": "014",
"title": "Replace the warp drive on the fusion reactor",
"description": "Warp drive has been malfunctioning, check the coils that generate the warp field.",
"status": "onHold",
"dueDate": "2017-12-06T19:23:09.162Z",
"dateCompleted": "2017-12-06T19:23:09.162Z",
"assignedToUser": "5ZXaLRZ40I",
"assignedToUsername": "5ZXaLRZ40I",
"completedByUser": "5ZXaLRZ40I",
"asset": "kW6I379ELS",
"time": "20",
"cost": "25",
"location": "Mkr457Gkk3",
"team": "PD6I909nLS",
"category": "Electrical",
"assignedByUser": "5ZXaLRZ40I",
"assignedByUsername": "test@onupkeep.com",
"priority": "1",
"signatureImage": {
"__type": "File",
"name": "da696460251395f712d5b83d948a360c_2cd43b_434c5b3602af429f927d290cbc27d790_mv2.png",
"url": "https://demo-api-upkeep.s3.amazonaws.com/da696460251395f712d5b83d948a360c_2cd43b_434c5b3602af429f927d290cbc27d790_mv2.png"
},
"requiresSignature": 1,
"category": "Electrical",
developers.onupkeep.com 52/86
6/5/2019 Introduction – UpKeep API Reference
"files": [
"2HMRIGeDKu"
],
"formItems": [
"YChe6OjzHC",
"FuJBoOf8Di",
"e2iFG6t7I9"
],
"image": {
"__type": "File",
"name": "dfimg_request2.jpg",
"url": "https://demo-api-upkeep.s3.amazonaws.com/dfimg_request2.jpg"
},
"image2": {...},
"image3": {...},
"image4": {...},
"image5": {...},
"arrayOfUpdateItems": [
"dGCW3cSjWv",
"SPRXIDJDZ1"
],
"parts": [
"sDmjnbbpAL",
"QhWwJbfGb4"
],
"respectivePartQuantityUsed": [
5,
1
],
"additionalUsers": [
"vk6BHzQVCX",
"lv6FZopMhz"
],
"publicRequesterEmail": "test@onupkeep.com",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/work-orders/<ID>
URL PARAMETERS
Parameter Description
QUERY PARAMETERS
developers.onupkeep.com 53/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/work-orders/<ID>"
-H "Session-Token: session_token_here"
-X PATCH
-d title="Repair Sink"
-d category="Electrical"
{
"success": true,
"result": {
"id": "HW2I379ErS",
"workOrderNo": "014",
"title": "Repair Sink",
"description": "Warp drive has been malfunctioning, check the coils that generate the warp field.",
"status": "onHold",
"dueDate": "2017-12-06T19:23:09.162Z",
"dateCompleted": "2017-12-06T19:23:09.162Z",
"assignedToUser": "5ZXaLRZ40I",
"assignedToUsername": "5ZXaLRZ40I",
"completedByUser": "5ZXaLRZ40I",
"asset": "kW6I379ELS",
"location": "Mkr457Gkk3",
"team": "PD6I909nLS",
"category": "Electrical",
"assignedByUser": "5ZXaLRZ40I",
"assignedByUsername": "test@onupkeep.com",
"estimatedDurationInHours" : 5,
"priority": "1",
"image": {
"__type": "File",
"name": "dfimg_request2.jpg",
"url": "https://demo-api-upkeep.s3.amazonaws.com/dfimg_request2.jpg"
},
"image2": {...},
"image3": {...},
"image4": {...},
"image5": {...},
"publicRequesterEmail": "test@onupkeep.com",
"createdAt": "2017-12-06T19:23:09.162Z",
"updatedAt": "2017-12-08T18:41:44.335Z"
}
}
HTTP REQUEST
PATCH https://api.onupkeep.com/api/v2/work-orders/<ID>
URL PARAMETERS
Parameter Description
REQUEST BODY
Provide any of the below fields of the part in the payload to update those specific fields. Null values are allowed to erase the value unless
otherwise stated.
developers.onupkeep.com 54/86
6/5/2019 Introduction – UpKeep API Reference
title String
description String
category String one of the set categories for Work Orders on your account, including the default ones
estimatedDurationInHours Number
1. If the work order status is updated and your account has a Zapier integration enabled, data will be sent to Zapier for the status
change trigger.
curl "https://api.onupkeep.com/api/v2/work-orders/jQXLsOvG7/update-messages/"
-X POST
-H "Session-Token: session_token_here"
-d text="New message"
{
"success": true,
"message": "1 message Added"
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/work-orders/<ID>/update-messages/
REQUEST BODY
curl "https://api.onupkeep.com/api/v2/work-orders/jQXLsOvG7"
-X DELETE
-H "Session-Token: session_token_here"
{
"success": true,
"message": "1 work order deleted"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/work-orders/<ID>
URL PARAMETERS
Parameter Description
Preventative Maintenance
curl "https://api.onupkeep.com/api/v2/preventative-maintenance/"
-H "Session-Token: session_token_here"
-X POST
-d title="Check Oil"
-d description="Confirm the tractor is optimal"
-d priority=1
-d recurringSchedule="daily"
-d dueDate=1515482422310
-d endDueDate=1517279400000
-d asset="gDK45aHe12"
-d location="MD565aHenL"
-d assignedToUser="lv6FZopMhz"
{
"success": true,
"result": {
"id": "6yDTWLAEmh",
"title": "Check Oil",
"status": "open",
"dueDate": "2018-01-09T07:20:22.310Z",
"endDueDate": "2018-01-30T02:30:00.000Z",
"recurringSchedule": "daily",
"assignedToUser": "lv6FZopMhz",
"assignedToUsername": "test@onupkeep.com",
developers.onupkeep.com 56/86
6/5/2019 Introduction – UpKeep API Reference
"asset": "gDK45aHe12",
"location": "MD565aHenL",
"assignedByUser": "lv6FZopMhz",
"assignedByUsername": "test@onupkeep.com",
"priority": 1,
"description": "Confirm the tractor is optimal",
"createdAt": "2018-01-09T07:56:53.743Z",
"updatedAt": "2018-01-09T07:56:53.743Z"
}
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/preventative-maintenance/
REQUEST BODY
Provide any of the below required fields and optional fields for the user.
dueDate Number false timestamp in milliseconds. If provided Preventative Work Orders will start from this date.
endDueDate Number false timestamp in milliseconds. If provided Preventative Work Orders will stop at this date.
1. If your account has a Zapier integration enabled, data will be sent to Zapier for the new Work Order trigger.
2. If a user is assigned to the work order, an email will be sent to him or her. If it is assigned to no one, emails will be sent to admins.
curl "https://api.onupkeep.com/api/v2/preventative-maintenance"
-H "Session-Token: session_token_here"
developers.onupkeep.com 57/86
6/5/2019 Introduction – UpKeep API Reference
{
"success": true,
"results": [
{
"id": "6yDTWLAEmh",
"title": "Check Oil",
"status": "open",
"dueDate": "2018-01-09T07:20:22.310Z",
"endDueDate": "2018-01-30T02:30:00.000Z",
"recurringSchedule": "daily",
"assignedToUser": "vk6BHzQVCX",
"assignedToUsername": "test@onupkeep.com",
"asset": "knyWfDnXWo",
"location": "cXRAu708NU",
"time": "20",
"cost": "25",
"assignedByUser": "lv6FZopMhz",
"assignedByUsername": "test@onupkeep.com",
"priority": 1,
"description": "Confirm the tractor is optimal",
"createdAt": "2018-01-09T07:56:53.743Z",
"updatedAt": "2018-01-09T07:56:53.743Z"
}
]
}
This endpoint retrieves all preventative maintenance work orders for your account.
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/preventative-maintenance
QUERY PARAMETERS
title undefined If set, only work orders with this title will be included.
asset undefined (ID) If set, only work orders associated with this asset will be included.
location undefined (ID) If set, only work orders belonging to this location will be included.
recurringSchedule undefined If set, only work orders with this repeating schedule will be included.
assignedToUser undefined (ID) If set, only work orders assigned to this user will be included.
assignedByUser undefined (ID) If set, only work orders assigned by this user will be included.
includes undefined (Array) send 'asset', 'location', 'assignedToUser', 'team' to expand respective object.
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt', 'dueDate'. Second
orderBy
DESC value: "ASC" or "DESC".
curl "https://api.onupkeep.com/api/v2/preventative-maintenance/HW2I379ErS"
-H "Session-Token: session_token_here"
{
"success": true,
"result": {
"id": "6yDTWLAEmh",
"title": "Check Oil",
"status": "open",
"dueDate": "2018-01-09T07:20:22.310Z",
"endDueDate": "2018-01-30T02:30:00.000Z",
"recurringSchedule": "daily",
"assignedToUser": "vk6BHzQVCX",
"time": "20",
"cost": "25",
"assignedToUsername": "test@onupkeep.com",
"asset": "knyWfDnXWo",
"location": "cXRAu708NU",
"assignedByUser": "lv6FZopMhz",
"assignedByUsername": "test@onupkeep.com",
"priority": 1,
"description": "Confirm the tractor is optimal",
"createdAt": "2018-01-09T07:56:53.743Z",
"updatedAt": "2018-01-09T07:56:53.743Z"
}
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/preventative-maintenance/<ID>
URL PARAMETERS
Parameter Description
QUERY PARAMETERS
curl "https://api.onupkeep.com/api/v2/preventative-maintenance/jQXLsOvG7"
-X DELETE
-H "Session-Token: session_token_here"
developers.onupkeep.com 59/86
6/5/2019 Introduction – UpKeep API Reference
{
"success": true,
"message": "1 work order deleted"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/preventative-maintenance/<ID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/work-order-schedule"
-H "Session-Token: session_token_here"
{
"success": true,
"results": [
{
"title": "Check Oil",
"status": "open",
"dueDate": "2018-01-09T07:20:22.310Z",
"assignedToUser": "vk6BHzQVCX",
"assignedToUsername": "test@onupkeep.com",
"asset": "knyWfDnXWo",
"location": "cXRAu708NU",
"time": "20",
"cost": "25",
"assignedByUser": "lv6FZopMhz",
"assignedByUsername": "test@onupkeep.com",
"priority": 1,
"description": "Confirm the tractor is optimal",
"createdAt": "2018-01-09T07:56:53.743Z",
"updatedAt": "2018-01-09T07:56:53.743Z"
}
]
}
This endpoint retrieves all preventative maintenance work orders for your account.
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/work-order-schedule
developers.onupkeep.com 60/86
6/5/2019 Introduction – UpKeep API Reference
QUERY PARAMETERS
title undefined If set, only work orders with this title will be included.
asset undefined (ID) If set, only work orders associated with this asset will be included.
location undefined (ID) If set, only work orders belonging to this location will be included.
category undefined If set, only work orders with this category will be included.
assignedToUser undefined (ID) If set, only work orders assigned to this user will be included.
assignedByUser undefined (ID) If set, only work orders assigned by this user will be included.
includes undefined (Array) send 'asset', 'location', 'assignedToUser', 'team' to expand respective object.
Meters
Create a Meter
curl "https://api.onupkeep.com/api/v2/meters/"
-H "Session-Token: session_token_here"
-X POST
-d name="Mileage"
-d units="KMPL"
-d frequency=7
-d asset="KXi4CS5Nft"
-d location="M75FZevseo"
{
"success": true,
"result": {
"id": "WEeI86SMu4",
"name": "Mileage",
"units": "KMPL",
"frequency": 7,
"createdByUser": "lv6FZopMhz",
"location": "M75FZevseo",
"asset": "KXi4CS5Nft",
"createdAt": "2018-01-30T10:19:24.141Z",
"updatedAt": "2018-01-30T10:19:24.141Z"
}
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/meters/
developers.onupkeep.com 61/86
6/5/2019 Introduction – UpKeep API Reference
REQUEST BODY
Provide any of the below required fields and optional fields for meter.
curl "https://api.onupkeep.com/api/v2/meters/"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"results": [
{
"id": "WEeI86SMu4",
"name": "Mileage",
"units": "KMPL",
"frequency": 7,
"createdByUser": "lv6FZopMhz",
"location": "M75FZevseo",
"asset": "KXi4CS5Nft",
"createdAt": "2018-01-30T10:19:24.141Z",
"updatedAt": "2018-01-30T10:19:24.141Z"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/meters/
QUERY PARAMETERS
name undefined If set the result will only include meters with that name.
asset undefined (ID) If set the result will only include meters with that asset.
location undefined (ID) If set the result will only include meters with that location.
developers.onupkeep.com 62/86
6/5/2019 Introduction – UpKeep API Reference
includes undefined (Array) send 'asset', 'location', 'lastReading' to expand respective object.
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt'. Second value: "ASC" or
orderBy
DESC "DESC".
curl "https://api.onupkeep.com/api/v2/meters/<ID>"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"result": {
"id": "WEeI86SMu4",
"name": "Mileage",
"units": "KMPL",
"frequency": 7,
"createdByUser": "lv6FZopMhz",
"location": "M75FZevseo",
"asset": "KXi4CS5Nft",
"lastReading": "IwOZ7ulcv5",
"createdAt": "2018-01-30T10:19:24.141Z",
"updatedAt": "2018-01-30T10:19:24.141Z"
}
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/meters/<ID>
URL PARAMETERS
Parameter Description
QUERY PARAMETERS
includes undefined (Array) send 'asset', 'location', 'lastReading' to expand respective object.
developers.onupkeep.com 63/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/meters/<ID>"
-H "Session-Token: session_token_here"
-X PATCH
-d frequency=4
{
"success": true,
"result": {
"id": "WEeI86SMu4",
"name": "Mileage",
"units": "KMPL",
"frequency": 4,
"createdByUser": "lv6FZopMhz",
"location": "M75FZevseo",
"asset": "KXi4CS5Nft",
"lastReading": "IwOZ7ulcv5",
"createdAt": "2018-01-30T10:19:24.141Z",
"updatedAt": "2018-01-30T10:19:24.141Z"
}
}
HTTP REQUEST
PATCH https://api.onupkeep.com/api/v2/meters/<ID>
URL PARAMETERS
Parameter Description
REQUEST BODY
Provide any of the below fields of the meter in the payload to update those specific fields. Null values are allowed to erase the value unless
otherwise stated.
NOTE
developers.onupkeep.com 64/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/meters/<ID>"
-X DELETE
-H "Session-Token: session_token_here"
{
"success": true,
"message": "1 meter deleted"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/meters/<ID>
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/meters/<meterID>/readings"
-H "Session-Token: session_token_here"
-X POST
-d value=1
{
"success": true,
"result": {
"id": "iGIkXrVtGS",
"date": "2018-01-30T10:05:20.402Z",
"meter": "GvWe2sCUkY",
"value": 1,
"createdByUser": "lv6FZopMhz",
"createdAt": "2018-01-30T10:05:20.425Z",
"updatedAt": "2018-01-30T10:05:20.425Z"
}
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/meters/<meterID>/readings
developers.onupkeep.com 65/86
6/5/2019 Introduction – UpKeep API Reference
REQUEST BODY
Provide any of the below required fields and optional fields for the meter reading.
URL PARAMETERS
Parameter Description
1. If a Work Order trigger is set via meter notification, Specified Work Order will be created if conditions are met.
curl "https://api.onupkeep.com/api/v2/meters/<meterID>/readings"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"results": [
{
"id": "iGIkXrVtGS",
"date": "2018-01-30T10:05:20.402Z",
"meter": "GvWe2sCUkY",
"value": 1,
"createdByUser": "lv6FZopMhz",
"createdAt": "2018-01-30T10:05:20.425Z",
"updatedAt": "2018-01-30T10:05:20.425Z"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/meters/<meterID>/readings
QUERY PARAMETERS
developers.onupkeep.com 66/86
6/5/2019 Introduction – UpKeep API Reference
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt'. Second value: "ASC" or
orderBy
DESC "DESC".
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/meters/<meterID>/notifications"
-H "Session-Token: session_token_here"
-X POST
-d title="Reading less than 100"
-d description="Triggers when reading is less than 100"
-d triggerValue=100
-d triggerFrequency="ONE_TIME_IS_LESS_THAN"
-d assignedToUser="qTmhmORg85"
{
"success": true,
"result": {
"id": "LNbrsMFfMy",
"title": "Reading less than 100",
"triggerFrequency": "ONE_TIME_IS_LESS_THAN",
"description": "Triggers when reading is less than 100",
"triggerValue": 100,
"assignedToUser": "qTmhmORg85",
"createdByUser": "lv6FZopMhz",
"createdAt": "2018-02-05T05:06:24.570Z",
"updatedAt": "2018-02-05T05:06:24.570Z"
}
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/meters/<meterID>/notifications
REQUEST BODY
Provide any of the below required fields and optional fields for meter notifications.
developers.onupkeep.com 67/86
6/5/2019 Introduction – UpKeep API Reference
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/meters/<meterID>/notifications"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"results": [
{
"id": "LNbrsMFfMy",
"title": "Reading less than 100",
"triggerFrequency": "ONE_TIME_IS_LESS_THAN",
"description": "Triggers when reading is less than 100",
"triggerValue": 100,
"assignedToUser": "qTmhmORg85",
"createdByUser": "lv6FZopMhz",
"createdAt": "2018-02-05T05:06:24.570Z",
"updatedAt": "2018-02-05T05:06:24.570Z"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/meters/<meterID>/notifications
QUERY PARAMETERS
developers.onupkeep.com 68/86
6/5/2019 Introduction – UpKeep API Reference
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt'. Second value: "ASC" or
orderBy
DESC "DESC".
URL PARAMETERS
Parameter Description
curl "https://api.onupkeep.com/api/v2/meters/<meterID>/notifications/<ID>"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"result": {
"id": "LNbrsMFfMy",
"title": "Reading less than 100",
"triggerFrequency": "ONE_TIME_IS_LESS_THAN",
"description": "Triggers when reading is less than 100",
"triggerValue": 100,
"assignedToUser": "qTmhmORg85",
"createdByUser": "lv6FZopMhz",
"createdAt": "2018-02-05T05:06:24.570Z",
"updatedAt": "2018-02-05T05:06:24.570Z"
}
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/meters/<meterID>/notifications/<ID>
URL PARAMETERS
Parameter Description
QUERY PARAMETERS
developers.onupkeep.com 69/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/meters/<meterID>/notifications/<ID>"
-H "Session-Token: session_token_here"
-X PATCH
-d assignedToUser="MtmhmKKg56"
{
"success": true,
"result": {
"id": "LNbrsMFfMy",
"title": "Reading less than 100",
"triggerFrequency": "ONE_TIME_IS_LESS_THAN",
"description": "Triggers when reading is less than 100",
"triggerValue": 100,
"assignedToUser": "MtmhmKKg56",
"createdByUser": "lv6FZopMhz",
"createdAt": "2018-02-05T05:06:24.570Z",
"updatedAt": "2018-02-05T05:06:24.570Z"
}
}
HTTP REQUEST
PATCH https://api.onupkeep.com/api/v2/meters/<meterID>/notifications/<ID>
URL PARAMETERS
Parameter Description
REQUEST BODY
Provide any of the below fields of the Meter Notification in the payload to update those specific fields. Null values are allowed to erase the
value unless otherwise stated.
developers.onupkeep.com 70/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/meters/<meterID>/notifications/<ID>"
-X DELETE
-H "Session-Token: session_token_here"
{
"success": true,
"message": "1 notification deleted"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/meters/<meterID>/notifications/<ID>
URL PARAMETERS
Parameter Description
Purchase Orders
curl 'https://api.onupkeep.com/api/v2/purchase-orders/'
-H 'Session-Token: session_token_here'
-H 'Content-Type: application/json'
-X POST
-d '{"title": "Power dice shortage", "parts": [{"id": "t0RYP2jIPz", "quantity": 5}],
"vendor": "IPS0tjjV5I", "description": "Small dice model 5","dueDate":"2018-06-30",
"poDate": "2018-06-28", "tax": 12, "shippingCost": 120, "otherCost": 1300,
developers.onupkeep.com 71/86
6/5/2019 Introduction – UpKeep API Reference
"requisitioner": "Mark Boucher", "shippingMethod": "Ground", "fobPoint": "184.83",
"terms": "T & C apply", "notes": "Recomended by engineering team","companyName":"AB Inc",
"companySlogan": "Time is money", "companyStreet": "23 Chester Evenue",
"companyCity": "Los Angeles", "companyState": "California", "companyZip":"90224",
"companyPhone": "+1 888-452-1505", "companyFax":"+1 333-452-1505","shippingName":"Mr VC Ness",
"shippingCompany":"DMR Dice suppliers", "shippingStreet": "345 PVN Mart",
"shippingCity": "Los Angeles", "shippingState":"California","shippingZip": "90224",
"shippingPhone": "+1 222-452-1505", "shippingFax": "+1 123-452-1505", "category": "Electrical"}'
{
"success": true,
"result": {
"id": "XHUi1SyW0t",
"createdByUser": "7w6jIHFdEr",
"title": "Power dice shortage",
"description": "Small dice model 5",
"status": "awaiting",
"poDate": "2018-06-28T00:00:00.000Z",
"dueDate": "2018-06-30T00:00:00.000Z",
"vendor": "IPS0tjjV5I",
"parts": [
"t0RYP2jIPz"
],
"partQuantities": [
5
],
"totalQuantity": 5,
"totalCost": 60,
"tax": 12,
"shippingCost": 120,
"otherCost": 1300,
"requisitioner": "Mark Boucher",
"shippingMethod": "Ground",
"fobPoint": "184.83",
"terms": "T & C apply",
"notes": "Recomended by engineering team",
"companyName": "AB Inc",
"companySlogan": "Time is money",
"companyStreet": "23 Chester Evenue",
"companyCity": "Los Angeles",
"companyState": "California",
"companyZip": "90224",
"companyPhone": "+1 888-452-1505",
"companyFax": "+1 333-452-1505",
"shippingName": "Mr VC Ness",
"shippingCompany": "DMR Dice suppliers",
"shippingStreet": "345 PVN Mart",
"shippingCity": "Los Angeles",
"shippingState": "California",
"shippingZip": "90224",
"shippingPhone": "+1 222-452-1505",
"shippingFax": "+1 123-452-1505",
"purchaseOrderNumber": 36,
"category": "Electrical",
"createdAt": "2018-06-08T09:15:46.452Z",
"updatedAt": "2018-06-08T09:15:46.452Z"
}
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/purchase-orders/
developers.onupkeep.com 72/86
6/5/2019 Introduction – UpKeep API Reference
REQUEST BODY
Provide any of the below required fields and optional fields for Purchase Order.
developers.onupkeep.com 73/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/purchase-orders/"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"results": [
{
"id": "XHUi1SyW0t",
"createdByUser": "7w6jIHFdEr",
"title": "Power dice shortage",
"description": "Small dice model 5",
"status": "awaiting",
"poDate": "2018-06-28T00:00:00.000Z",
"dueDate": "2018-06-30T00:00:00.000Z",
"vendor": "IPS0tjjV5I",
"parts": [
"t0RYP2jIPz"
],
"partQuantities": [
5
],
"totalQuantity": 5,
"totalCost": 60,
"tax": 12,
"shippingCost": 120,
"otherCost": 1300,
"requisitioner": "Mark Boucher",
"shippingMethod": "Ground",
"fobPoint": "184.83",
"terms": "T & C apply",
"notes": "Recomended by engineering team",
"companyName": "AB Inc",
"companySlogan": "Time is money",
"companyStreet": "23 Chester Evenue",
"companyCity": "Los Angeles",
"companyState": "California",
"companyZip": "90224",
"companyPhone": "+1 888-452-1505",
"companyFax": "+1 333-452-1505",
"shippingName": "Mr VC Ness",
"shippingCompany": "DMR Dice suppliers",
"shippingStreet": "345 PVN Mart",
"shippingCity": "Los Angeles",
"shippingState": "California",
developers.onupkeep.com 74/86
6/5/2019 Introduction – UpKeep API Reference
"shippingZip": "90224",
"shippingPhone": "+1 222-452-1505",
"shippingFax": "+1 123-452-1505",
"purchaseOrderNumber": 36,
"category": "Electrical",
"createdAt": "2018-06-08T09:15:46.452Z",
"updatedAt": "2018-06-08T09:15:46.452Z"
}
]
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/purchase-orders/
QUERY PARAMETERS
title undefined If set the result will only include Purchase Orders with that title.
status undefined If set the result will only include Purchase Orders with that status.
vendor undefined If set the result will only include Purchase Orders with that vendor.
createdAt (String) Sorting for pagination. First value is the field: 'createdAt', 'updatedAt'. Second value: "ASC" or
orderBy
DESC "DESC".
curl "https://api.onupkeep.com/api/v2/purchase-orders/<ID>"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"result": {
"id": "XHUi1SyW0t",
"createdByUser": "7w6jIHFdEr",
"title": "Power dice shortage",
"description": "Small dice model 5",
"status": "awaiting",
"poDate": "2018-06-28T00:00:00.000Z",
"dueDate": "2018-06-30T00:00:00.000Z",
"vendor": "IPS0tjjV5I",
"parts": [
"t0RYP2jIPz"
developers.onupkeep.com 75/86
6/5/2019 Introduction – UpKeep API Reference
],
"partQuantities": [
5
],
"totalQuantity": 5,
"totalCost": 60,
"tax": 12,
"shippingCost": 120,
"otherCost": 1300,
"requisitioner": "Mark Boucher",
"shippingMethod": "Ground",
"fobPoint": "184.83",
"terms": "T & C apply",
"notes": "Recomended by engineering team",
"companyName": "AB Inc",
"companySlogan": "Time is money",
"companyStreet": "23 Chester Evenue",
"companyCity": "Los Angeles",
"companyState": "California",
"companyZip": "90224",
"companyPhone": "+1 888-452-1505",
"companyFax": "+1 333-452-1505",
"shippingName": "Mr VC Ness",
"shippingCompany": "DMR Dice suppliers",
"shippingStreet": "345 PVN Mart",
"shippingCity": "Los Angeles",
"shippingState": "California",
"shippingZip": "90224",
"shippingPhone": "+1 222-452-1505",
"shippingFax": "+1 123-452-1505",
"purchaseOrderNumber": 36,
"category": "Electrical",
"createdAt": "2018-06-08T09:15:46.452Z",
"updatedAt": "2018-06-08T09:15:46.452Z"
}
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/purchase-orders/<ID>
URL PARAMETERS
Parameter Description
QUERY PARAMETERS
curl 'https://api.onupkeep.com/api/v2/purchase-orders/<ID>'
-H 'Session-Token: session_token_here'
-H 'Content-Type: application/json'
developers.onupkeep.com 76/86
6/5/2019 Introduction – UpKeep API Reference
-X PATCH
-d '{"status": "fulfilled"}'
{
"success": true,
"result": {
"id": "XHUi1SyW0t",
"createdByUser": "7w6jIHFdEr",
"title": "Power dice shortage",
"description": "Small dice model 5",
"status": "fulfilled",
"fulfilledAt": "2018-06-08T10:04:05.108Z",
"fulfilledByUser": "7w6jIHFdEr",
"poDate": "2018-06-28T00:00:00.000Z",
"dueDate": "2018-06-30T00:00:00.000Z",
"vendor": "IPS0tjjV5I",
"parts": [
"t0RYP2jIPz"
],
"partQuantities": [
5
],
"totalQuantity": 5,
"totalCost": 60,
"tax": 12,
"shippingCost": 120,
"otherCost": 1300,
"requisitioner": "Mark Boucher",
"shippingMethod": "Ground",
"fobPoint": "184.83",
"terms": "T & C apply",
"notes": "Recomended by engineering team",
"companyName": "AB Inc",
"companySlogan": "Time is money",
"companyStreet": "23 Chester Evenue",
"companyCity": "Los Angeles",
"companyState": "California",
"companyZip": "90224",
"companyPhone": "+1 888-452-1505",
"companyFax": "+1 333-452-1505",
"shippingName": "Mr VC Ness",
"shippingCompany": "DMR Dice suppliers",
"shippingStreet": "345 PVN Mart",
"shippingCity": "Los Angeles",
"shippingState": "California",
"shippingZip": "90224",
"shippingPhone": "+1 222-452-1505",
"shippingFax": "+1 123-452-1505",
"purchaseOrderNumber": 36,
"category": "Electrical",
"createdAt": "2018-06-08T09:15:46.452Z",
"updatedAt": "2018-06-08T09:15:46.452Z"
}
}
HTTP REQUEST
PATCH https://api.onupkeep.com/api/v2/purchase-orders/<ID>
URL PARAMETERS
Parameter Description
developers.onupkeep.com 77/86
6/5/2019 Introduction – UpKeep API Reference
Parameter Description
REQUEST BODY
Provide any of the below fields of the Purchase Order in the payload to update those specific fields. Null values are allowed to erase the
value unless otherwise stated.
title String
description String
category String
dueDate String
poDate String
tax Number
shippingCost Number
otherCost Number
requisitioner String
shippingMethod String
fobPoint String
terms String
notes String
companyName String
companySlogan String
companyStreet String
companyCity String
companyState String
companyZip String
companyPhone String
companyFax String
developers.onupkeep.com 78/86
6/5/2019 Introduction – UpKeep API Reference
shippingName String
shippingCompany String
shippingStreet String
shippingCity String
shippingState String
shippingZip String
shippingPhone String
shippingFax String
NOTE
For updating parts in Purchase order. Its required to send all array objects with quantity just like the create request
curl "https://api.onupkeep.com/api/v2/purchase-orders/<ID>"
-X DELETE
-H "Session-Token: session_token_here"
{
"success": true,
"message": "1 Purchase Order deleted"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/purchase-orders/<ID>
URL PARAMETERS
Parameter Description
developers.onupkeep.com 79/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/purchase-orders/<purchaseOrderID>/update-messages"
-H "Session-Token: session_token_here"
-X POST
-d text="Will be delevered soon"
{
"success": true,
"message": "update message added"
}
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/purchase-orders/<purchaseOrderID>/update-messages
REQUEST BODY
Provide any of the below required fields and optional fields for message.
URL PARAMETERS
Parameter Description
curl 'https://api.onupkeep.com/api/v2/purchase-order-categories/'
-H 'Session-Token: session_token_here'
-X POST
-d name="Electrical"
{
"success": true,
"result": {
"id": "G25KW7hlV0",
"name": "Electrical",
"createdAt": "2018-06-08T10:49:16.489Z",
"updatedAt": "2018-06-08T10:49:16.489Z"
}
}
developers.onupkeep.com 80/86
6/5/2019 Introduction – UpKeep API Reference
HTTP REQUEST
POST https://api.onupkeep.com/api/v2/purchase-order-categories/
REQUEST BODY
Provide any of the below required fields and optional fields for Purchase Order Category.
curl "https://api.onupkeep.com/api/v2/purchase-order-categories/"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"results": [
{
"id": "G25KW7hlV0",
"name": "Electrical",
"createdAt": "2018-06-08T10:49:16.489Z",
"updatedAt": "2018-06-08T10:49:16.489Z"
}
]
}
This endpoint retrieves all Purchase Order Categories for your account.
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/purchase-order-categories/
curl "https://api.onupkeep.com/api/v2/purchase-order-categories/<ID>"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"result": {
developers.onupkeep.com 81/86
6/5/2019 Introduction – UpKeep API Reference
"id": "G25KW7hlV0",
"name": "Electrical",
"createdAt": "2018-06-08T10:49:16.489Z",
"updatedAt": "2018-06-08T10:49:16.489Z"
}
}
HTTP REQUEST
GET https://api.onupkeep.com/api/v2/purchase-order-categories/<ID>
URL PARAMETERS
Parameter Description
curl 'https://api.onupkeep.com/api/v2/purchase-order-categories/<ID>'
-H 'Session-Token: session_token_here'
-X PATCH
-d name="Project"
{
"success": true,
"result": {
"id": "G25KW7hlV0",
"name": "Project",
"createdAt": "2018-06-08T10:49:16.489Z",
"updatedAt": "2018-06-08T10:49:16.489Z"
}
}
HTTP REQUEST
PATCH https://api.onupkeep.com/api/v2/purchase-order-categoriess/<ID>
URL PARAMETERS
Parameter Description
REQUEST BODY
name String
developers.onupkeep.com 82/86
6/5/2019 Introduction – UpKeep API Reference
curl "https://api.onupkeep.com/api/v2/purchase-order-categories/<ID>"
-X DELETE
-H "Session-Token: session_token_here"
{
"success": true,
"message": "1 Purchase Order Category deleted"
}
HTTP REQUEST
DELETE https://api.onupkeep.com/api/v2/purchase-order-categories/<ID>
URL PARAMETERS
Parameter Description
Reporting (BETA)
curl "https://analytics-api.onupkeep.com/v2/work-orders/dashboard"
-H "Session-Token: session_token_here"
-X GET
{
"success": true,
"results": [
{
"id": "WHjlKzI9h3",
"name": "Manish Sangwan",
"completed": "0",
"inProgress": "2",
"onHold": "0",
"open": "6",
"pastDue": "0",
"totalHours": "312.20",
"additionalCost": "0.00",
"priorityNone": "7",
"priorityLow": "0",
"priorityMedium": "1",
"priorityHigh": "0",
developers.onupkeep.com 83/86
6/5/2019 Introduction – UpKeep API Reference
"averageHoursToComplete": "0.00"
}
],
"groupedBy": "user-assigned"
}
Public api for for fetching various aggregate counts eg Work Orders open, In progress, Avg time to complete etc. User can group by
different entities and apply various filters. By default data is fetched for Work Orders created within last month
NOTE: REPORTING API IS CURRENTLY IN BETA AND QUERY PARAMS/RESPONSE/FUNCTIONALITY IS LIKELY TO BE CHANGED IN NEAR FUTURE.
HTTP REQUEST
GET https://analytics-api.onupkeep.com/v2/work-orders/dashboard
QUERY PARAMETERS
(String) Entity to group data. Allowed Allowed values- user-assigned, user-created, user-completed,
user-
groupBy asset-assigned, team-assigned, category-assigned, requested-by, location-assigned. Default value
assigned
is user-assigned, eg groupBy=user-assigned
(String) To count for recurring Work Orders send value 'preventative' otherwise count will be made
workOrderType reactive
on non recurring Work Orders. eg workOrderType=preventative
assignedTo undefined (String) Filters Work Orders assigned to particular user. eg assignedTo=fjQXLsOvG7
createdBy undefined (String) Filters Work Orders created by particular user. eg createdBy=fjQXLsOvG7
completedBy undefined (String) Filters Work Orders completed by particular user. eg completedBy=fjQXLsOvG7
location undefined (String) Filters Work Orders attached to particular location. eg location=6yDTWLAEmh
asset undefined (String) Filters Work Orders attached to particular asset. eg asset=0kDUM9MnqF
category undefined (String) Filters Work Orders having to particular category. eg category=Project
(String) Filters Work Orders created after a particular time. Timestring is in your local time. eg
createdAtStart undefined
createdAtStart=2018-01-09T07:20:22 .By default createdAt is set to one month ago
(String) Filters Work Orders created before a particular time. Timestring is in your local time. eg
createdAtEnd undefined
createdAtEnd=2018-10-09T07:20:22
(String) Filters Work Orders updated after a particular time. Timestring is in your local time. eg
updatedAtStart undefined
updatedAtStart=2018-01-09T07:20:22
Filters Work Orders updated before a particular time. Timestring is in your local time. eg
updatedAtEnd undefined
updatedAtEnd=2018-10-09T07:20:22
(String) Filters Work Orders due after a particular time. Timestring is in your local time. eg
dueDateStart undefined
dueDateStart=2018-01-09T07:20:22
(String) Filters Work Orders due before a particular time. Timestring is in your local time. eg
dueDateEnd undefined
dueDateEnd=2018-10-09T07:20:22
(String) Filters Work Orders completed after a particular time. Timestring is in your local time. eg
dateCompletedStart undefined
dateCompletedStart=2018-01-09T07:20:22
developers.onupkeep.com 84/86
6/5/2019 Introduction – UpKeep API Reference
(String) Filters Work Orders completed before a particular time. Timestring is in your local time. eg
dateCompletedEnd undefined
dateCompletedEnd=2018-10-09T07:20:22
The work-order API returns all single work orders for your UpKeep account. A common use case for UpKeep’s APIs are to utilize the fetch
work order API with specific filters to run your own reports. For example, if you wanted to generate a report on a specific set of work
orders, you may want to use the filter where userAssignedTo equals Tom to pull all work orders. From the response, you’ll be able to pull a
report and aggregate things like the total time, cost, and average time to completion for this group of individuals.
You may also want to generate a report for all preventative work orders. To do this you’ll want to use our preventative maintenance API
to find all of the root preventative maintenance work orders. To find the schedules of the preventative maintenance work orders, you’ll use
the ID of the root PM work orders and pass the root preventative maintenance work order into the “get work order schedule” API. With that
data, you will receive an array of all of the PMs that match the criteria so you can do aggregate reporting on PMs.
A common use case for the parts API may be to update and increase the quantity of a given part after you have received new inventory.
This could be a trigger set up from another system that tracks when new inventory has arrived at your facility.
A common use case for the asset API may be to utilize your tracking system to update the asset’s location. You can do that utilizing the
“update a specific asset” API. First, you may want to utilize the “get all locations” API to find the ID of the correct location and pass in the
location ID into the “update asset” API to update the asset’s location.
A common use case for utilizing the requests API would be to set up integrations with your company’s work order request system. You
may want to create UpKeep requests through our API without needing to manually enter the same information in.
Use the users API, to add, remove or update a specific user from your UpKeep account.
Errors
405 Method Not Allowed -- You tried to access a object with an invalid method.
429 Too Many Requests -- You're requesting too many objects! Slow down!
developers.onupkeep.com 85/86
6/5/2019 Introduction – UpKeep API Reference
500 Internal Server Error -- We had a problem with our server. Try again later.
503 Service Unavailable -- We're temporarily offline for maintenance. Please try again later.
If the API Endpoint returns an error of status 500 or 400, the body of the request will contain a message property. Below are common
messages:
Message Meaning
{field} cannot be null The {field} in your POST or PATCH request must contain a value.
invalid filter key: {field} The {field} in your GET request does not exist.
{field} not in schema The {field} with a value in your POST request does not exist.
{field} is not allowed to be set! The {field} in your PATCH request cannot be edited.
developers.onupkeep.com 86/86