Back to top

Public API Documentation for VRScheduler

API Playground: https://api.vrscheduler.com/api/doc/public_api

AuthToken Request Format on Header -

VRS “Auth token provided in login API”

Example: - VRS eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiIsImV4cCI6IjM2MDAwMDAwMDAwMDAwIn0.eyJDdXNYXNvbiIsInByb3BlcnRpZXMiOlt7InJlc29

Rate limiting: Currently, each account is limited to 50 requests per 2 minutes.

Endpoints

Note: Auth Token required to send in header of All Api’s expect login api

Authentication

Used to get auth token and refresh token

Note: All Arguments are Optional.

Note: Auth Token expiry time is 1 hour and refresh token expiry time is 24 hours

Get an authtoken

Get an authtoken
POST/api/v1/oauth/login

Example URI

POST https://api.vrscheduler.com/api/v1/oauth/login
Request
HideShow
Headers
Content-Type: application/json
Body
{
  "API_Key": "32C246C4",
  "API_Value": "D9DC6018"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "API_Key": {
      "type": "string",
      "description": "A4BC-4872-A0B56CA7633C886 (string, required) - Unique identifier for the task."
    },
    "API_Value": {
      "type": "string",
      "description": "E30B-4C70-AC88366EDA5D5F28 (string, required) - Associated PropertyBooking Object."
    }
  }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "Access_Token": {
    "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiIsImV4cCI6IjM2MDAifQ.eyJDdXN0b21lcklEIjo3MCwiQ3VzdG9tZXJOYW1lIjoiSmlsbCBNYXNvbiIsInByb3BlcnRpZXMiOlt7InJlc291cnNlTmFtZSI6Iklzc3VlcyIsImFjY2Vzc0xldmVsIjowLCJyZXN0cmljdFBlcnNvbmFsRGF0YSI6ZmFsc2V9LHsicmVzb3Vyc2VOYW1lIjoiT",
    "Created": "202003011004",
    "Expiry": 3600
  },
  "Refresh_Token": {
    "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiIsImV4cCI6IjM2MDAifQ.eyJDdXN0b21lcklEIjo3MCwiQ3VzdG9tZXJOYW1lIjoiSmlsbCBNYXNvbiIsInByb3BlcnRpZXMiOlt7InJlc291cnNlTmFtZSI6Iklzc3VlcyIsImFjY2Vzc0xldmVsIjowLCJyZXN0cmljdFBlcnNvbmFsRGF0YSI6ZmFsc2V9LHsicmVzb3Vyc2VOYW1lIjoiT",
    "Created": "202003011004",
    "Expiry": 86400
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Access_Token": {
      "type": "object",
      "properties": {
        "token": {
          "type": "string"
        },
        "Created": {
          "type": "string"
        },
        "Expiry": {
          "type": "number"
        }
      }
    },
    "Refresh_Token": {
      "type": "object",
      "properties": {
        "token": {
          "type": "string"
        },
        "Created": {
          "type": "string"
        },
        "Expiry": {
          "type": "number"
        }
      }
    }
  }
}

Get an AuthToken Using RefreshToken

Get an AuthToken Using RefreshToken
GET/api/v1/oauth/refresh

Note: Send Refresh token in header to get Auth Token

Example of Header Request Token -

Authorization(Key) - Refresh Token Provided in Login API(Value)

Example URI

GET https://api.vrscheduler.com/api/v1/oauth/refresh
Request
HideShow
Headers
Authorization: VRS <refresh_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "ReasonCode": 0,
  "ReasonText": "Success",
  "Access_Token": {
    "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiIsImV4cCI6IjM2MDAifQ.eyJDdXN0b21lcklEIjo3MCwiQ3VzdG9tZXJOYW1lIjoiSmlsbCBNYXNvbiIsInByb3BlcnRpZXMiOlt7InJlc291cnNlTmFtZSI6Iklzc3VlcyIsImFjY2Vzc0xldmVsIjowLCJyZXN0cmljdFBlcnNvbmFsRGF0YSI6ZmFsc2V9LHsicmVzb3Vyc2VOYW1lIjoiT",
    "Created": "202003011004",
    "Expiry": 3600
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "ReasonCode": {
      "type": "number"
    },
    "ReasonText": {
      "type": "string"
    },
    "Access_Token": {
      "type": "object",
      "properties": {
        "token": {
          "type": "string"
        },
        "Created": {
          "type": "string"
        },
        "Expiry": {
          "type": "number"
        }
      }
    }
  }
}

Properties

The Property object is the core resource to represent physical properties. Most other resources (like Tasks, Issues) are attached to a property.

Note: All Arguments are Optional.

Get Properties
GET/api/v1/properties?OwnerID={OwnerID}&Active={Active}&RegionID={RegionID}&Sort={Sort}&per_page={per_page}&page={page}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/properties?OwnerID=256&Active=1&RegionID=1&Sort=PropertyName asc&per_page=20&page=1
URI Parameters
HideShow
OwnerID
number (optional) Example: 256

The unique identifier for the ownerid.

RegionID
number (optional) Example: 1

The unique identifier for the regionid.

Active
boolean (optional) Example: 1

Flag to filter properties by their active status. 1 = Active properties, 0 = Inactive properties. If not included, only active properties are returned by default.

Sort
string (optional) Default: PropertyID asc Example: PropertyName asc

Example 2: sort=CreateDate desc, PropertyID asc
Available Sort Fields: PropertyID, PropertyName, CreateDate.
Available Sort Order: asc or desc. (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/properties",
  "has_more": true,
  "data": {
    "PropertyID": 163,
    "Active": true,
    "PropertyName": "Waterfront Cabin",
    "PropertyAbbreviation": "WAT",
    "PropertyNotes": "property notes",
    "InternalNotes": "Internal notes",
    "Address": "123 Main St. Sunnyvale, CA 94086",
    "Lat": 0,
    "Lon": 0,
    "DoorCode": "1234",
    "DefaultCheckInTime": 15,
    "DefaultCheckInTimeMinutes": 0,
    "DefaultCheckOutTime": 11,
    "DefaultCheckOutTimeMinutes": 0,
    "OwnerID": 34,
    "RegionID": 23,
    "PropertyStatusID": 163,
    "CreateDate": 20170616
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "PropertyID": {
          "type": "number"
        },
        "Active": {
          "type": "boolean"
        },
        "PropertyName": {
          "type": "string"
        },
        "PropertyAbbreviation": {
          "type": "string"
        },
        "PropertyNotes": {
          "type": "string"
        },
        "InternalNotes": {
          "type": "string"
        },
        "Address": {
          "type": "string"
        },
        "Lat": {
          "type": "number"
        },
        "Lon": {
          "type": "number"
        },
        "DoorCode": {
          "type": "string"
        },
        "DefaultCheckInTime": {
          "type": "number"
        },
        "DefaultCheckInTimeMinutes": {
          "type": "number"
        },
        "DefaultCheckOutTime": {
          "type": "number"
        },
        "DefaultCheckOutTimeMinutes": {
          "type": "number"
        },
        "OwnerID": {
          "type": "number"
        },
        "RegionID": {
          "type": "number"
        },
        "PropertyStatusID": {
          "type": "number"
        },
        "CreateDate": {
          "type": "number"
        }
      }
    }
  }
}

Get Property by ID
GET/api/v1/properties/{PropertyID}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/properties/256
URI Parameters
HideShow
PropertyID
number (required) Example: 256

The unique identifier for the propertyid.

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/properties",
  "has_more": true,
  "data": {
    "PropertyID": 163,
    "Active": true,
    "PropertyName": "Waterfront Cabin",
    "PropertyAbbreviation": "WAT",
    "PropertyNotes": "property notes",
    "InternalNotes": "Internal notes",
    "Address": "123 Main St. Sunnyvale, CA 94086",
    "Lat": 0,
    "Lon": 0,
    "DoorCode": "1234",
    "DefaultCheckInTime": 15,
    "DefaultCheckInTimeMinutes": 0,
    "DefaultCheckOutTime": 11,
    "DefaultCheckOutTimeMinutes": 0,
    "OwnerID": 34,
    "RegionID": 23,
    "PropertyStatusID": 163,
    "CreateDate": 20170616
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "PropertyID": {
          "type": "number"
        },
        "Active": {
          "type": "boolean"
        },
        "PropertyName": {
          "type": "string"
        },
        "PropertyAbbreviation": {
          "type": "string"
        },
        "PropertyNotes": {
          "type": "string"
        },
        "InternalNotes": {
          "type": "string"
        },
        "Address": {
          "type": "string"
        },
        "Lat": {
          "type": "number"
        },
        "Lon": {
          "type": "number"
        },
        "DoorCode": {
          "type": "string"
        },
        "DefaultCheckInTime": {
          "type": "number"
        },
        "DefaultCheckInTimeMinutes": {
          "type": "number"
        },
        "DefaultCheckOutTime": {
          "type": "number"
        },
        "DefaultCheckOutTimeMinutes": {
          "type": "number"
        },
        "OwnerID": {
          "type": "number"
        },
        "RegionID": {
          "type": "number"
        },
        "PropertyStatusID": {
          "type": "number"
        },
        "CreateDate": {
          "type": "number"
        }
      }
    }
  }
}

Create Property
POST/api/v1/properties

Note: Need Auth token in header for this api.

Example URI

POST https://api.vrscheduler.com/api/v1/properties
Request
HideShow
Headers
Content-Type: application/json
Authorization: VRS <access_token>
Body
{
  "PropertyName": "PropertyName",
  "Abbreviation": "PN",
  "Address": "Property Address",
  "OwnerID": 33,
  "RegionID": 21,
  "DefaultCheckInTime": 16,
  "DefaultCheckInTimeInMinutes": 30,
  "DefaultCheckOutTime": 16,
  "DefaultCheckOutTimeInMinutes": 30
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "PropertyName": {
      "type": "string"
    },
    "Abbreviation": {
      "type": "string"
    },
    "Address": {
      "type": "string"
    },
    "OwnerID": {
      "type": "number"
    },
    "RegionID": {
      "type": "number"
    },
    "DefaultCheckInTime": {
      "type": "number"
    },
    "DefaultCheckInTimeInMinutes": {
      "type": "number"
    },
    "DefaultCheckOutTime": {
      "type": "number"
    },
    "DefaultCheckOutTimeInMinutes": {
      "type": "number"
    }
  }
}
Response  201
HideShow
Headers
Content-Type: application/json
Body
{
  "PropertyID": 11,
  "PropertyName": "PropertyName",
  "Abbreviation": "PN",
  "Address": "Property Address",
  "OwnerID": 33,
  "RegionID": 21,
  "DefaultCheckInTime": 16,
  "DefaultCheckInTimeInMinutes": 30,
  "DefaultCheckOutTime": 16,
  "DefaultCheckOutTimeInMinutes": 30,
  "CreateDate": "20210401100453"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "PropertyID": {
      "type": "number"
    },
    "PropertyName": {
      "type": "string"
    },
    "Abbreviation": {
      "type": "string"
    },
    "Address": {
      "type": "string"
    },
    "OwnerID": {
      "type": "number"
    },
    "RegionID": {
      "type": "number"
    },
    "DefaultCheckInTime": {
      "type": "number"
    },
    "DefaultCheckInTimeInMinutes": {
      "type": "number"
    },
    "DefaultCheckOutTime": {
      "type": "number"
    },
    "DefaultCheckOutTimeInMinutes": {
      "type": "number"
    },
    "CreateDate": {
      "type": "string"
    }
  }
}

Update Property by ID
PUT/api/v1/properties/{propertyID}

Note: Need Auth token in header for this api Note: Some or All Fields of property booking can be updated.

Example URI

PUT https://api.vrscheduler.com/api/v1/properties/1236
URI Parameters
HideShow
propertyID
number (required) Example: 1236

The unique identifier for the propertyID. .

Request
HideShow
Headers
Content-Type: application/json
Authorization: VRS <access_token>
Body
{
  "Active": 1,
  "PropertyAbbreviation": "LJ",
  "PropertyNotes": "PropertyNotes",
  "InternalNotes": "InternalNotes",
  "Address": "Leavenworth",
  "Lat": 123.4,
  "Lon": 123.4,
  "DoorCode": 1234,
  "DefaultCheckInTime": 15,
  "DefaultCheckInTimeMinutes": 0,
  "DefaultCheckOutTime": 11,
  "DefaultCheckOutTimeMinutes": 0,
  "RegionID": 23
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Active": {
      "type": "number",
      "description": "Property bookings is active or not"
    },
    "PropertyAbbreviation": {
      "type": "string"
    },
    "PropertyNotes": {
      "type": "string"
    },
    "InternalNotes": {
      "type": "string"
    },
    "Address": {
      "type": "string"
    },
    "Lat": {
      "type": "number",
      "description": "Clock In Latitude coordinate."
    },
    "Lon": {
      "type": "number",
      "description": "Clock In Longitude coordinate."
    },
    "DoorCode": {
      "type": "number"
    },
    "DefaultCheckInTime": {
      "type": "number"
    },
    "DefaultCheckInTimeMinutes": {
      "type": "number"
    },
    "DefaultCheckOutTime": {
      "type": "number"
    },
    "DefaultCheckOutTimeMinutes": {
      "type": "number"
    },
    "RegionID": {
      "type": "number"
    }
  }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": "200",
  "message": "Data Updated Successfully"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  }
}

Property Statuses

The Property Statuses object is the core resource to represent physical property statuses.

Note: All Arguments are Optional.

Get Property Statuses
GET/api/v1/propertystatuses?propertystatusid={PropertyStatusID}&propertystatus={PropertyStatus}&sort={Sort}&per_page={per_page}&page={page}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/propertystatuses?propertystatusid=256&propertystatus=256&sort=PropertyStatusID asc&per_page=20&page=1
URI Parameters
HideShow
PropertyStatusID
number (optional) Example: 256

The unique identifier for the propertystatusid.

PropertyStatus
string (optional) Example: 256

Provide Property Status

Sort
string (optional) Default: PropertyStatusID asc Example: PropertyStatusID asc

Example 2: sort=PropertyStatusID asc, CreateDate asc
Available Sort Fields: PropertyStatus, CreateDate, PropertyStatusID.
Available Sort Order: asc or desc. (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/propertystatuses",
  "has_more": true,
  "data": {
    "PropertyStatusID": 163,
    "PropertyStatus": "Service",
    "SetOnCheckIn": 0,
    "SetOnCheckOut": 0,
    "CreateDate": 20170616
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "PropertyStatusID": {
          "type": "number"
        },
        "PropertyStatus": {
          "type": "string"
        },
        "SetOnCheckIn": {
          "type": "number"
        },
        "SetOnCheckOut": {
          "type": "number"
        },
        "CreateDate": {
          "type": "number"
        }
      }
    }
  }
}

Update Property Status by ID
PATCH/api/v1/property/{PropertyID}

Note: Need Auth token in header for this api.

Example URI

PATCH https://api.vrscheduler.com/api/v1/property/256
URI Parameters
HideShow
PropertyID
number (required) Example: 256

The unique identifier for the propertyid.

Request
HideShow
Headers
Content-Type: application/json
Authorization: VRS <access_token>
Body
{
  "PropertyStatusID": 2
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "PropertyStatusID": {
      "type": "number"
    }
  }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": "200",
  "message": "Data Updated Successfully"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  }
}

Issues

The Issue object represents physical issues. Each Issue object is assigned to one Issue.

Note: All Arguments are Optional.

Get Issues
GET/api/v1/issues?StatusID={StatusID}&IssueType={IssueType}&Billable={Billable}&CreateStartDate={CreateStartDate}&CreateEndDate={CreateEndDate}&ClosedStartDate={ClosedStartDate}&ClosedEndDate={ClosedEndDate}&Urgent={Urgent}&PropertyID={PropertyID}&Sort={Sort}&per_page={per_page}&page={page}&closed={closed}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/issues?StatusID=2&IssueType=4&Billable=1&CreateStartDate=20190101&CreateEndDate=20190102&ClosedStartDate=20190102&ClosedEndDate=20190102&Urgent=1&PropertyID=13&Sort=CreateDate DESC&per_page=20&page=1&closed=0
URI Parameters
HideShow
StatusID
string (optional) Example: 2

0 = New, 1 = In Progress, 2 = On Hold, 3 = Cataloged.

IssueType
string (optional) Example: 4

0 = Damage, 1 = Maintenance, 2 = Lost and Found, 3 = Supply Flag, -1 = None.

Billable
boolean (optional) Example: 1

Flag indicating if Issue should be billed to Owner

CreateStartDate
string (optional) Example: 20190101

Returns results including and after specified created date.

CreateEndDate
string (optional) Example: 20190102

Returns results including and before specified created date.

ClosedStartDate
string (optional) Example: 20190102

Returns results including and after specified closed date.

ClosedEndDate
string (optional) Example: 20190102

Returns results including and before specified closed date.

Urgent
boolean (optional) Example: 1

Toggle if the issue is urgent or not.

PropertyID
number (optional) Example: 13

unique identifier of the property

closed
number (optional) Example: 0

0 = ClosedDate IS NULL, 1 = ClosedDate IS NOT NULL.

Sort
string (optional) Default: IssueID ASC Example: CreateDate DESC

Example 2: sort=IssueID, Urgent asc
Available Sort Fields: IssueID, StatusID, IssueType, Urgent, PropertyID, CreateDate.
Available Sort Order: asc or desc. (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/issues",
  "has_more": true,
  "data": {
    "IssueID": 135,
    "StatusID": "0",
    "IssueType": "0",
    "Urgent": true,
    "Issue": "Screen door off tracks.",
    "Notes": "Add Notes",
    "StaffNotes": "Staff Notes",
    "SubmittedByServicerID": 1920,
    "SubmittedByOwnerID": 101,
    "Images": [
      {
        "IssueImageID": 123,
        "Image": "https://images.vrscheduler.com/70/IMG_5076.JPG",
        "ShowOwner": 1
      }
    ],
    "Billable": false,
    "PropertyID": 36,
    "ClosedDate": 20170809,
    "CreateDate": 20170804
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "IssueID": {
          "type": "number"
        },
        "StatusID": {
          "type": "string",
          "enum": [
            "0",
            "1",
            "2",
            "3"
          ],
          "description": "0 = New, 1 = In Progress, 2 = On Hold, 3 = Cataloged."
        },
        "IssueType": {
          "type": "string",
          "enum": [
            "0",
            "1",
            "2",
            "3",
            "-1"
          ],
          "description": "0 = Damage, 1 = Maintenance, 2 = Lost and Found, 3 = Supply Flag, `-1` = None."
        },
        "Urgent": {
          "type": "boolean",
          "description": "Toggle if the issue is urgent or not."
        },
        "Issue": {
          "type": "string",
          "description": "Issue title submitted with the issue"
        },
        "Notes": {
          "type": "string"
        },
        "StaffNotes": {
          "type": "string"
        },
        "SubmittedByServicerID": {
          "type": "number"
        },
        "SubmittedByOwnerID": {
          "type": "number"
        },
        "Images": {
          "type": "array"
        },
        "Billable": {
          "type": "boolean"
        },
        "PropertyID": {
          "type": "number"
        },
        "ClosedDate": {
          "type": "number"
        },
        "CreateDate": {
          "type": "number"
        }
      }
    }
  }
}

Get Issue by ID
GET/api/v1/issues/{IssueID}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/issues/1236
URI Parameters
HideShow
IssueID
number (required) Example: 1236

The unique identifier for the issueID.

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/issues",
  "has_more": true,
  "data": {
    "IssueID": 135,
    "StatusID": "0",
    "IssueType": "0",
    "Urgent": true,
    "Issue": "Screen door off tracks.",
    "Notes": "Add Notes",
    "StaffNotes": "Staff Notes",
    "SubmittedByServicerID": 1920,
    "SubmittedByOwnerID": 101,
    "Images": [
      {
        "IssueImageID": 123,
        "Image": "https://images.vrscheduler.com/70/IMG_5076.JPG",
        "ShowOwner": 1
      }
    ],
    "Billable": false,
    "PropertyID": 36,
    "ClosedDate": 20170809,
    "CreateDate": 20170804
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "IssueID": {
          "type": "number"
        },
        "StatusID": {
          "type": "string",
          "enum": [
            "0",
            "1",
            "2",
            "3"
          ],
          "description": "0 = New, 1 = In Progress, 2 = On Hold, 3 = Cataloged."
        },
        "IssueType": {
          "type": "string",
          "enum": [
            "0",
            "1",
            "2",
            "3",
            "-1"
          ],
          "description": "0 = Damage, 1 = Maintenance, 2 = Lost and Found, 3 = Supply Flag, `-1` = None."
        },
        "Urgent": {
          "type": "boolean",
          "description": "Toggle if the issue is urgent or not."
        },
        "Issue": {
          "type": "string",
          "description": "Issue title submitted with the issue"
        },
        "Notes": {
          "type": "string"
        },
        "StaffNotes": {
          "type": "string"
        },
        "SubmittedByServicerID": {
          "type": "number"
        },
        "SubmittedByOwnerID": {
          "type": "number"
        },
        "Images": {
          "type": "array"
        },
        "Billable": {
          "type": "boolean"
        },
        "PropertyID": {
          "type": "number"
        },
        "ClosedDate": {
          "type": "number"
        },
        "CreateDate": {
          "type": "number"
        }
      }
    }
  }
}

Create Issue
POST/api/v1/issues

Note: The Request body is of type form-data instead of Raw. Please add ‘request’ key under Key column and the JSON data under Value column of form-data. Ensure that the key name of image should match the ‘ImageKey’ node in the JSON request.

Note: Need Auth token in header for this api.

Example URI

POST https://api.vrscheduler.com/api/v1/issues
Request
HideShow
Headers
Content-Type: application/json
Body
{
  "request": {
    "statusID": "2",
    "IssueType": "4",
    "Issue": "Screen door off tracks.",
    "notes": "Issue Notes",
    "internalNotes": "Internal Notes",
    "showOnOwnerDashboard": true,
    "billable": true,
    "propertyID": 136,
    "closedDateTime": "20220101",
    "SubmittedByServicerID": 123,
    "SubmittedByOwnerID": 456,
    "Images": [
      {
        "ImageKey": "Image",
        "ShowOwner": 1
      }
    ]
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "request": {
      "type": "object",
      "properties": {
        "statusID": {
          "type": "string",
          "enum": [
            "2"
          ],
          "description": "0 = New, 1 = In Progress, 2 = On Hold, 3 = Cataloged."
        },
        "IssueType": {
          "type": "string",
          "enum": [
            "4"
          ],
          "description": "0 = Damage, 1 = Maintenance, 2 = Lost and Found, 3 = Supply Flag, `-1` = None."
        },
        "Issue": {
          "type": "string"
        },
        "notes": {
          "type": "string"
        },
        "internalNotes": {
          "type": "string"
        },
        "showOnOwnerDashboard": {
          "type": "boolean"
        },
        "billable": {
          "type": "boolean",
          "description": "Flag indicating if Issue should be billed to Owner"
        },
        "propertyID": {
          "type": "number"
        },
        "closedDateTime": {
          "type": "string"
        },
        "SubmittedByServicerID": {
          "type": "number"
        },
        "SubmittedByOwnerID": {
          "type": "number"
        },
        "Images": {
          "type": "array"
        }
      }
    }
  }
}
Response  201
HideShow
Headers
Content-Type: application/json
Body
{
  "code": "201",
  "message": "Data Inserted Successfully",
  "Data": {
    "statusID": "2",
    "IssueType": "4",
    "Issue": "Screen door off tracks.",
    "notes": "Issue Notes",
    "internalNotes": "Internal Notes",
    "showOnOwnerDashboard": true,
    "billable": true,
    "propertyID": 136,
    "closedDateTime": "20220101",
    "SubmittedByServicerID": 123,
    "SubmittedByOwnerID": 456,
    "Images": [
      {
        "ImageKey": "Image",
        "ShowOwner": 1
      }
    ]
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "string"
    },
    "message": {
      "type": "string"
    },
    "Data": {
      "type": "object",
      "properties": {
        "statusID": {
          "type": "string",
          "enum": [
            "2"
          ],
          "description": "0 = New, 1 = In Progress, 2 = On Hold, 3 = Cataloged."
        },
        "IssueType": {
          "type": "string",
          "enum": [
            "4"
          ],
          "description": "0 = Damage, 1 = Maintenance, 2 = Lost and Found, 3 = Supply Flag, `-1` = None."
        },
        "Issue": {
          "type": "string"
        },
        "notes": {
          "type": "string"
        },
        "internalNotes": {
          "type": "string"
        },
        "showOnOwnerDashboard": {
          "type": "boolean"
        },
        "billable": {
          "type": "boolean",
          "description": "Flag indicating if Issue should be billed to Owner"
        },
        "propertyID": {
          "type": "number"
        },
        "closedDateTime": {
          "type": "string"
        },
        "SubmittedByServicerID": {
          "type": "number"
        },
        "SubmittedByOwnerID": {
          "type": "number"
        },
        "Images": {
          "type": "array"
        }
      }
    }
  }
}

Update Issue
PUT/api/v1/issues

Note: The Request type will be POST instead of PUT

Note: The Request body is of type form-data instead of Raw. Please add ‘request’ key under Key column and the JSON data under Value column of form-data. Ensure that the key name of image should match the ‘ImageKey’ node in the JSON request.

Note: Need Auth token in header for this api.

Example URI

PUT https://api.vrscheduler.com/api/v1/issues
Request
HideShow
Headers
Content-Type: application/json
Body
{
  "request": {
    "IssueID": 62071,
    "Update": true,
    "statusID": "2",
    "IssueType": "4",
    "Issue": "Screen door off tracks.",
    "notes": "Issue Notes",
    "internalNotes": "Internal Notes",
    "showOnOwnerDashboard": true,
    "billable": true,
    "propertyID": 136,
    "closedDateTime": "20220101",
    "Images": [
      {
        "ImageKey": "Image",
        "ShowOwner": 1
      }
    ]
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "request": {
      "type": "object",
      "properties": {
        "IssueID": {
          "type": "number"
        },
        "Update": {
          "type": "boolean"
        },
        "statusID": {
          "type": "string",
          "enum": [
            "2"
          ],
          "description": "0 = New, 1 = In Progress, 2 = On Hold, 3 = Cataloged."
        },
        "IssueType": {
          "type": "string",
          "enum": [
            "4"
          ],
          "description": "0 = Damage, 1 = Maintenance, 2 = Lost and Found, 3 = Supply Flag, `-1` = None."
        },
        "Issue": {
          "type": "string"
        },
        "notes": {
          "type": "string"
        },
        "internalNotes": {
          "type": "string"
        },
        "showOnOwnerDashboard": {
          "type": "boolean"
        },
        "billable": {
          "type": "boolean",
          "description": "Flag indicating if Issue should be billed to Owner"
        },
        "propertyID": {
          "type": "number"
        },
        "closedDateTime": {
          "type": "string"
        },
        "Images": {
          "type": "array"
        }
      }
    }
  }
}
Response  201
HideShow
Headers
Content-Type: application/json
Body
{
  "code": "201",
  "message": "Data Updated Successfully",
  "Data": {
    "IssueID": 62071,
    "Update": true,
    "statusID": "2",
    "IssueType": "4",
    "Issue": "Screen door off tracks.",
    "notes": "Issue Notes",
    "internalNotes": "Internal Notes",
    "showOnOwnerDashboard": true,
    "billable": true,
    "propertyID": 136,
    "closedDateTime": "20220101",
    "Images": [
      {
        "ImageKey": "Image",
        "ShowOwner": 1
      }
    ]
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "string"
    },
    "message": {
      "type": "string"
    },
    "Data": {
      "type": "object",
      "properties": {
        "IssueID": {
          "type": "number"
        },
        "Update": {
          "type": "boolean"
        },
        "statusID": {
          "type": "string",
          "enum": [
            "2"
          ],
          "description": "0 = New, 1 = In Progress, 2 = On Hold, 3 = Cataloged."
        },
        "IssueType": {
          "type": "string",
          "enum": [
            "4"
          ],
          "description": "0 = Damage, 1 = Maintenance, 2 = Lost and Found, 3 = Supply Flag, `-1` = None."
        },
        "Issue": {
          "type": "string"
        },
        "notes": {
          "type": "string"
        },
        "internalNotes": {
          "type": "string"
        },
        "showOnOwnerDashboard": {
          "type": "boolean"
        },
        "billable": {
          "type": "boolean",
          "description": "Flag indicating if Issue should be billed to Owner"
        },
        "propertyID": {
          "type": "number"
        },
        "closedDateTime": {
          "type": "string"
        },
        "Images": {
          "type": "array"
        }
      }
    }
  }
}

TaskRules

The TaskRule object is the core resource to represent owners of the task rules managed. Each owner can be associated with one or more task rules.

Note: All Arguments are Optional.

Get TaskRules
GET/api/v1/taskrules?Active={Active}&Sort={Sort}&per_page={per_page}&page={page}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/taskrules?Active=true&Sort=TaskRule&per_page=20&page=1
URI Parameters
HideShow
Active
boolean (optional) Default: true Example: true

Active: true
Inactive: false

Sort
string (optional) Default: TaskRuleID asc Example: TaskRule

Example 2: CreateDate desc, TaskRule asc
Available Sort Fields: TaskRuleID,TaskRule, Abbreviation, CreateDate.
Available Sort Order: asc or desc. (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/taskrules",
  "has_more": true,
  "data": {
    "TaskRuleID": 132,
    "Active": true,
    "TaskRule": "Bay View Bungalow",
    "Abbreviation": "BVB",
    "CreateDate": 20190302
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "TaskRuleID": {
          "type": "number",
          "description": "Unique identifier for the task rule."
        },
        "Active": {
          "type": "boolean",
          "description": "Whether the taskrule is in service."
        },
        "TaskRule": {
          "type": "string",
          "description": "The name of the task rule."
        },
        "Abbreviation": {
          "type": "string",
          "description": "A 10 character abbreviation for the rule used for scheduling."
        },
        "CreateDate": {
          "type": "number",
          "description": "Creation date."
        }
      }
    }
  }
}

Get TaskRule by ID
GET/api/v1/taskrules/{TaskRuleID}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/taskrules/132
URI Parameters
HideShow
TaskRuleID
number (required) Example: 132

Unique identifier for the task rule.

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/taskrules",
  "has_more": true,
  "data": {
    "TaskRuleID": 132,
    "Active": true,
    "TaskRule": "Bay View Bungalow",
    "Abbreviation": "BVB",
    "CreateDate": 20190302
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "TaskRuleID": {
          "type": "number",
          "description": "Unique identifier for the task rule."
        },
        "Active": {
          "type": "boolean",
          "description": "Whether the taskrule is in service."
        },
        "TaskRule": {
          "type": "string",
          "description": "The name of the task rule."
        },
        "Abbreviation": {
          "type": "string",
          "description": "A 10 character abbreviation for the rule used for scheduling."
        },
        "CreateDate": {
          "type": "number",
          "description": "Creation date."
        }
      }
    }
  }
}

Create TaskRule
POST/v1/propertyTaskRules

Note: Need Auth token in header for this api.

Example URI

POST https://api.vrscheduler.com/v1/propertyTaskRules
Request
HideShow
Headers
Content-Type: application/json
Body
{
  "PropertyID": 123,
  "TaskRuleID": "12345",
  "LaborAmount": 100,
  "MaterialsAmount": 100,
  "MinTimeToComplete": 20,
  "MaxTimeToComplete": 30,
  "LeadStaffID": 142,
  "LeadStaffPiecePay": 100,
  "AdditionalStaff": [
    {
      "StaffID": "136",
      "StaffPiecePay": "20"
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "PropertyID": {
      "type": "number"
    },
    "TaskRuleID": {
      "type": "string"
    },
    "LaborAmount": {
      "type": "number"
    },
    "MaterialsAmount": {
      "type": "number"
    },
    "MinTimeToComplete": {
      "type": "number"
    },
    "MaxTimeToComplete": {
      "type": "number"
    },
    "LeadStaffID": {
      "type": "number"
    },
    "LeadStaffPiecePay": {
      "type": "number"
    },
    "AdditionalStaff": {
      "type": "array"
    }
  }
}
Response  201
HideShow
Headers
Content-Type: application/json
Body
{
  "code": "201",
  "message": "Data Inserted Successfully",
  "PropertyToTaskRuleID": "431710"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "string"
    },
    "message": {
      "type": "string"
    },
    "PropertyToTaskRuleID": {
      "type": "string"
    }
  }
}

Get Property TaskRules
GET/api/v1/propertyTaskRules?PropertyToTaskRuleID={PropertyToTaskRuleID}&PropertyID={PropertyID}&TaskRuleID={TaskRuleID}&LaborAmount={LaborAmount}&MaterialsAmount={MaterialsAmount}&MinTimeToComplete={MinTimeToComplete}&MaxTimeToComplete={MaxTimeToComplete}&LeadStaffID={LeadStaffID}&LeadStaffPiecePay={LeadStaffPiecePay}&LeadStaffName={LeadStaffName}&StaffID={StaffID}&StaffPiecePay={StaffPiecePay}&StaffName={StaffName}&PropertyActive={PropertyActive}&TaskRuleActive={TaskRuleActive}&page={page}&sort={Sort}&per_page={per_page}

Note: Need Auth token in header for this api.

Example URI

GET https://api.vrscheduler.com/api/v1/propertyTaskRules?PropertyToTaskRuleID=123&PropertyID=132&TaskRuleID=132&LaborAmount=50&MaterialsAmount=45&MinTimeToComplete=20&MaxTimeToComplete=30&LeadStaffID=142&LeadStaffPiecePay=100&LeadStaffName=John&StaffID=132&StaffPiecePay=100&StaffName=James&PropertyActive=true&TaskRuleActive=true&page=1&sort=PropertyToTaskRuleID&per_page=20
URI Parameters
HideShow
PropertyToTaskRuleID
number (optional) Example: 123
PropertyID
number (optional) Example: 132
TaskRuleID
number (optional) Example: 132

Unique identifier for the task rule.

LaborAmount
number (optional) Example: 50

Amount to bill for labor for this task.

MaterialsAmount
number (optional) Example: 45

Amount to bill for materials for this task.

MinTimeToComplete
number (optional) Example: 20

Minimum Time to complete task

MaxTimeToComplete
number (optional) Example: 30

Minimum Time to complete task

LeadStaffID
number (optional) Example: 142

Lead Staff ID

LeadStaffPiecePay
number (optional) Example: 100
LeadStaffName
string (optional) Example: John
StaffID
number (optional) Example: 132

Staff ID

StaffPiecePay
number (optional) Example: 100
StaffName
string (optional) Example: James
PropertyActive
boolean (optional) Example: true
TaskRuleActive
boolean (optional) Example: true
Sort
string (optional) Default: TaskRuleID asc Example: PropertyToTaskRuleID

Example 2: PropertyToTaskRuleID asc, PropertyID asc
Available Sort Fields: PropertyToTaskRuleID,PropertyID, TaskRuleID, LaborAmount, LeadStaffName.
Available Sort Order: asc or desc. (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/propertyTaskRules",
  "has_more": true,
  "data": {
    "PropertyToTaskRuleID": 123,
    "PropertyID": 132,
    "TaskRuleID": 132,
    "LaborAmount": 50,
    "MaterialsAmount": 45,
    "MinTimeToComplete": 20,
    "MaxTimeToComplete": 30,
    "LeadStaffID": 142,
    "LeadStaffPiecePay": 100,
    "LeadStaffName": "John",
    "StaffID": 132,
    "StaffPiecePay": 100,
    "StaffName": "James",
    "PropertyActive": true,
    "TaskRuleActive": true,
    "AdditionalStaffResponse": [
      {
        "StaffID": 1921,
        "StaffPiecePay": 152,
        "StaffName": "Zoe Smith"
      }
    ]
  },
  "page_count": "0",
  "page_size": "25",
  "page": "1",
  "total_items": "0"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "PropertyToTaskRuleID": {
          "type": "number"
        },
        "PropertyID": {
          "type": "number"
        },
        "TaskRuleID": {
          "type": "number",
          "description": "Unique identifier for the task rule."
        },
        "LaborAmount": {
          "type": "number",
          "description": "Amount to bill for labor for this task."
        },
        "MaterialsAmount": {
          "type": "number",
          "description": "Amount to bill for materials for this task."
        },
        "MinTimeToComplete": {
          "type": "number",
          "description": "Minimum Time to complete task"
        },
        "MaxTimeToComplete": {
          "type": "number",
          "description": "Minimum Time to complete task"
        },
        "LeadStaffID": {
          "type": "number",
          "description": "Lead Staff ID"
        },
        "LeadStaffPiecePay": {
          "type": "number"
        },
        "LeadStaffName": {
          "type": "string"
        },
        "StaffID": {
          "type": "number",
          "description": "Staff ID"
        },
        "StaffPiecePay": {
          "type": "number"
        },
        "StaffName": {
          "type": "string"
        },
        "PropertyActive": {
          "type": "boolean"
        },
        "TaskRuleActive": {
          "type": "boolean"
        },
        "AdditionalStaffResponse": {
          "type": "array"
        }
      }
    },
    "page_count": {
      "type": "string"
    },
    "page_size": {
      "type": "string"
    },
    "page": {
      "type": "string"
    },
    "total_items": {
      "type": "string"
    }
  }
}

Delete Property Taskrule by ID
DELETE/api/v1/propertyTaskRules/{propertyTaskRuleID}

Note: Need Auth token in header for this api

Example URI

DELETE https://api.vrscheduler.com/api/v1/propertyTaskRules/1236
URI Parameters
HideShow
propertyTaskRuleID
number (required) Example: 1236

The unique identifier for the propertyTaskRuleID.

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": "204",
  "message": "Data is succesfully deleted"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  }
}

Owners

The Owner object is the core resource to represent owners of the properties managed. Each owner can be associated with one or more properties.

Note: All Arguments are Optional.

Get Owners
GET/api/v1/owners?Active={Active}&Sort={Sort}&per_page={per_page}&page={page}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/owners?Active=true&Sort=OwnerID&per_page=20&page=1
URI Parameters
HideShow
Active
boolean (optional) Default: true Example: true

Whether the owner is active

Sort
string (optional) Default: OwnerID asc Example: OwnerID

Example 2: OwnerID asc, CreateDate desc
Available Sort Fields: OwnerID, OwnerName, CountryID, CreateDate.
Available Sort Order: asc or desc. (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/owners",
  "has_more": true,
  "data": {
    "OwnerID": 132,
    "Active": true,
    "OwnerName": "Bay View Bungalow",
    "OwnerEmail": "owner@vrscheduler.com",
    "OwnerPhone": "+1 541-999-9999",
    "CountryID 224": 1,
    "CreateDate": 20190302
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "OwnerID": {
          "type": "number",
          "description": "Unique identifier for the owner."
        },
        "Active": {
          "type": "boolean",
          "description": "Whether the owner is in service."
        },
        "OwnerName": {
          "type": "string",
          "description": "The full name of the owner."
        },
        "OwnerEmail": {
          "type": "string",
          "description": "A single email address for the owner."
        },
        "OwnerPhone": {
          "type": "string",
          "description": "A phone number which can be used for text messaging.  May use the country code."
        },
        "CountryID 224": {
          "type": "number",
          "description": "Lookup for outside US & Canada country codes. See country enum."
        },
        "CreateDate": {
          "type": "number",
          "description": "Creation date."
        }
      }
    }
  }
}

Post Owner Details
POST/api/v1/owners

Note: Need Auth token in header for this api.

Example URI

POST https://api.vrscheduler.com/api/v1/owners
Request
HideShow
Headers
Content-Type: application/json
Authorization: VRS <access_token>
Body
{
  "OwnerName": "OwnerName",
  "OwnerEmail": "owner@email.com"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "OwnerName": {
      "type": "string"
    },
    "OwnerEmail": {
      "type": "string"
    }
  }
}
Response  201
HideShow
Headers
Content-Type: application/json
Body
{
  "OwnerID": 15519,
  "OwnerName": "OwnerName",
  "OwnerEmail": "owner@email.com",
  "CreateDate": "20210401100453"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "OwnerID": {
      "type": "number"
    },
    "OwnerName": {
      "type": "string"
    },
    "OwnerEmail": {
      "type": "string"
    },
    "CreateDate": {
      "type": "string"
    }
  }
}

Regions

The Region object represents physical regions. Each Property object is assigned to one Region.

Note: All Arguments are Optional.

Get Regions
GET/api/v1/regions?Sort={Sort}&per_page={per_page}&page={page}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/regions?Sort=RegionID&per_page=20&page=1
URI Parameters
HideShow
Sort
string (optional) Default: RegionID asc Example: RegionID

Example 2: sort=RegionID asc, CreateDate desc
Available Sort Fields: RegionID, RegionGroupID, Region, Color, TimeZoneID, CreateDate
Available Sort Order: asc, desc (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/regions",
  "has_more": true,
  "data": {
    "RegionID": 132,
    "Region": "NorthSide",
    "Color": "#ffcccc",
    "TimeZoneID 3492": "Hello, world!",
    "CreateDate": 20190302
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "RegionID": {
          "type": "number",
          "description": "Unique identifier for the region."
        },
        "Region": {
          "type": "string",
          "description": "The full name of the region."
        },
        "Color": {
          "type": "string",
          "description": "Hex Color used by the region during scheduling.  Starts with #."
        },
        "TimeZoneID 3492": {
          "type": "string",
          "description": "Lookup for outside US & Canada country codes. See country enum."
        },
        "CreateDate": {
          "type": "number",
          "description": "Creation date."
        }
      }
    }
  }
}

REGIONGROUPS

The RegionGroup object represents physical regions. Each Property object is assigned to one Region.

Note: All Arguments are Optional.

Get Region Groups
GET/api/v1/regiongroups?Sort={Sort}&per_page={per_page}&page={page}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/regiongroups?Sort=RegionGroupID&per_page=20&page=1
URI Parameters
HideShow
Sort
string (optional) Default: RegionGroupID asc Example: RegionGroupID

Example 2: sort=RegionGroupID asc, CreateDate desc
Available Sort Fields: RegionGroupID, RegionGroup, CreateDate
Available Sort Order: asc, desc (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/regiongroups",
  "has_more": true,
  "data": {
    "RegionGroupID": 67,
    "RegionGroup": "USA",
    "CreateDate": "20190905"
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "RegionGroupID": {
          "type": "number",
          "description": "Unique identifier for the object"
        },
        "RegionGroup": {
          "type": "string",
          "description": "The full name of the regiongroup."
        },
        "CreateDate": {
          "type": "string"
        }
      }
    }
  }
}

StaffTaskTimes

The StaffTask object represents items requiring staff members to get paid. Each StaffTaskTime object is assigned to one StaffTask.

Note: All Arguments are Optional.

Get StaffTaskTimes
GET/api/v1/stafftasktimes?StaffID={StaffID}&TaskID={TaskID}&PropertyID={PropertyID}&StartDate={StartDate}&EndDate={EndDate}&Sort={Sort}&per_page={per_page}&page={page}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/stafftasktimes?StaffID=12&TaskID=144&PropertyID=91860&StartDate=20190101&EndDate=20190202&Sort=StaffTaskTimeID&per_page=20&page=1
URI Parameters
HideShow
StaffID
string (required) Example: 12
TaskID
string (required) Example: 144
PropertyID
string (required) Example: 91860
StartDate
string (required) Example: 20190101
EndDate
string (required) Example: 20190202
Sort
string (optional) Default: StaffTaskTimeID asc Example: StaffTaskTimeID

Example 2: sort=StaffTaskTimeID asc, StaffID asc
Available Sort Fields: StaffTaskTimeID, StaffID, TaskID, ClockIn, ClockOut
Available Sort Order: asc, desc (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/regiongroups",
  "has_more": true,
  "data": {
    "StaffTaskTimeID": 24,
    "StaffID": 134,
    "TaskID": 81530,
    "ClockIn": "20170625030227",
    "ClockOut": "20170625030231",
    "InLat": 123.4,
    "InLon": 123.4,
    "OutLat": 111.23,
    "OutLon": 11234.45,
    "Note": "Test",
    "AutoLogOutFlag": false
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "StaffTaskTimeID": {
          "type": "number",
          "description": "Unique identifier for the object."
        },
        "StaffID": {
          "type": "number",
          "description": "Associated Staff Object"
        },
        "TaskID": {
          "type": "number",
          "description": "Associated Task Object"
        },
        "ClockIn": {
          "type": "string",
          "description": "Date and time of clocking into a task."
        },
        "ClockOut": {
          "type": "string",
          "description": "Date and time of clocking out a task."
        },
        "InLat": {
          "type": "number",
          "description": "Clock In Latitude coordinate."
        },
        "InLon": {
          "type": "number",
          "description": "Clock In Latitude coordinate."
        },
        "OutLat": {
          "type": "number",
          "description": "Clock In Latitude coordinate."
        },
        "OutLon": {
          "type": "number",
          "description": "Clock In Latitude coordinate."
        },
        "Note": {
          "type": "string",
          "description": "Administrator note about the record"
        },
        "AutoLogOutFlag": {
          "type": "boolean",
          "description": "If the staff member forgot to log out and the system auto logged them out."
        }
      }
    }
  }
}

STAFFDAYTIMES

The StaffDayTimes object represents items requiring staff members to get paid. Each StaffDayTime object is assigned to one StaffTask.

Note: All Arguments are Optional.

Get StaffDayTimes
GET/api/v1/staffdaytimes?StaffID={StaffID}&StartDate={StartDate}&EndDate={EndDate}&Sort={Sort}&per_page={per_page}&page={page}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/staffdaytimes?StaffID=12&StartDate=20190101&EndDate=20190202&Sort=StaffDayTimeID&per_page=20&page=1
URI Parameters
HideShow
StaffID
number (optional) Example: 12
StartDate
string (optional) Example: 20190101
EndDate
string (optional) Example: 20190202
Sort
string (optional) Default: StaffDayTimeID asc Example: StaffDayTimeID

Example 2: sort=StaffID, StaffDayTimeID asc
Available Sort Fields: StaffDayTimeID, StaffID, ClockIn, ClockOut
Available Sort Order: asc, desc (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/staffdaytimes",
  "has_more": true,
  "data": {
    "StaffDayTimeID": 24,
    "StaffID": 134,
    "ClockIn": "20170625030227",
    "ClockOut": "20170625030231",
    "InLat": "123.4",
    "InLon": "123.4",
    "OutLat": "111.23",
    "OutLon": "11234.45",
    "MileageIn": 45345345,
    "MileageOut": 45345345,
    "AutoLogOutFlag": false
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "StaffDayTimeID": {
          "type": "number",
          "description": "Unique identifier for the object."
        },
        "StaffID": {
          "type": "number",
          "description": "Associated Staff Object"
        },
        "ClockIn": {
          "type": "string",
          "description": "Date and time of clocking into a task."
        },
        "ClockOut": {
          "type": "string",
          "description": "Date and time of clocking out a task."
        },
        "InLat": {
          "type": "string",
          "description": "Clock In Latitude coordinate."
        },
        "InLon": {
          "type": "string",
          "description": "Clock In Latitude coordinate."
        },
        "OutLat": {
          "type": "string",
          "description": "Clock In Latitude coordinate."
        },
        "OutLon": {
          "type": "string",
          "description": "Clock In Latitude coordinate."
        },
        "MileageIn": {
          "type": "number",
          "description": "Mileage reported on clock in."
        },
        "MileageOut": {
          "type": "number",
          "description": "Mileage reported on clock out."
        },
        "AutoLogOutFlag": {
          "type": "boolean",
          "description": "If the staff member forgot to log out and the system auto logged them out."
        }
      }
    }
  }
}

PropertyBookings

The PropertyBooking object represents physical propertybookings. Each Property object is assigned to one PropertyBooking.

Note: All Arguments are Optional.

Get PropertyBookings
GET/api/v1/propertybookings?PropertyID={PropertyID}&Active=&CheckInStartDate={CheckInStartDate}&CheckInEndDate={CheckInEndDate}&CheckOutStartDate={CheckOutStartDate}&CheckOutEndDate={CheckOutEndDate}&Sort={Sort}&per_page={per_page}&page={page}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/propertybookings?PropertyID=13&Active=&CheckInStartDate=20190101&CheckInEndDate=20190102&CheckOutStartDate=20190102&CheckOutEndDate=20190102&Sort=PropertyBookingID&per_page=20&page=1
URI Parameters
HideShow
CheckInStartDate
string (optional) Example: 20190101

Returns results including and after specified created date.

CheckInEndDate
string (optional) Example: 20190102

Returns results including and before specified created date.

CheckOutStartDate
string (optional) Example: 20190102

Returns results including and after specified closed date.

CheckOutEndDate
string (optional) Example: 20190102

Returns results including and before specified closed date.

PropertyID
number (optional) Example: 13

unique identifier of the property

Sort
string (optional) Default: PropertyBookingID asc Example: PropertyBookingID

Example 2: sort=CheckIn asc,CreateDate desc
Available Sort Fields: PropertyBookingID, CheckIn, CheckOut, CreateDate
Available Sort Order: asc, desc (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/propertybookings",
  "has_more": true,
  "data": {
    "PropertyBookingID": 4452,
    "PropertyID": "167",
    "CheckIn": 20170730,
    "CheckInTime": 15,
    "CheckInTimeMinutes": 0,
    "CheckOut": 20170805,
    "CheckOutTime": 11,
    "CheckOutTimeMinutes": 0,
    "Guest": "guest",
    "GuestPhone": "12345",
    "GuestEmail": "guest@email.com",
    "NumberOfGuest": 0,
    "NumberOfPets": 0,
    "NumberOfChildren": 0,
    "IsOwner": "0",
    "BookingTags": "BeachChairs, MidClean",
    "ManualBookingTags": "PoolHeat, AllBedsAsKing",
    "ImportBookingID": 123,
    "PMSNote": "PMSNote",
    "PMSHousekeepingNote": "PMSHousekeepingNote",
    "BookingNote": "BookingNote",
    "InternalNote": "InternalNote",
    "CreateDate": 20170509,
    "Active": 1,
    "LinenCounts": "1,3,4,5"
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "PropertyBookingID": {
          "type": "number",
          "description": "Unique identifier for the property booking."
        },
        "PropertyID": {
          "type": "string",
          "description": "Associated Property Object."
        },
        "CheckIn": {
          "type": "number",
          "description": "Date of checkin."
        },
        "CheckInTime": {
          "type": "number",
          "description": "Hour of check in by 24 hour clock."
        },
        "CheckInTimeMinutes": {
          "type": "number",
          "description": "Minute value of check in, for example if check in is at 10:30, this value would be 30."
        },
        "CheckOut": {
          "type": "number",
          "description": "Date of check out."
        },
        "CheckOutTime": {
          "type": "number",
          "description": "Hour of check out by 24 hour clock."
        },
        "CheckOutTimeMinutes": {
          "type": "number",
          "description": "Minute value of check out, for example if check in is at 10:30, this value would be 30."
        },
        "Guest": {
          "type": "string"
        },
        "GuestPhone": {
          "type": "string"
        },
        "GuestEmail": {
          "type": "string"
        },
        "NumberOfGuest": {
          "type": "number",
          "description": "Number of people staying for this booking."
        },
        "NumberOfPets": {
          "type": "number",
          "description": "Number of Pets staying for this booking."
        },
        "NumberOfChildren": {
          "type": "number",
          "description": "Number of children staying for this booking."
        },
        "IsOwner": {
          "type": "string",
          "enum": [
            "0",
            "1",
            "2"
          ],
          "description": "0 = Not an owner, 1 = Is an owner, 2 = Is an owner guest"
        },
        "BookingTags": {
          "type": "string",
          "description": "Tags used for generating tasks on the calendar.  Used in conjunction with the Task Rules."
        },
        "ManualBookingTags": {
          "type": "string",
          "description": "Tags used for generating tasks on the calendar.  Used in conjunction with the Task Rules. This field is not editable by integrations."
        },
        "ImportBookingID": {
          "type": "number"
        },
        "PMSNote": {
          "type": "string"
        },
        "PMSHousekeepingNote": {
          "type": "string"
        },
        "BookingNote": {
          "type": "string"
        },
        "InternalNote": {
          "type": "string"
        },
        "CreateDate": {
          "type": "number",
          "description": "Created Date of the Property Bookings"
        },
        "Active": {
          "type": "number",
          "description": "Property bookings is active or not"
        },
        "LinenCounts": {
          "type": "string",
          "description": "Properties each Linen Count"
        }
      }
    }
  }
}

Get PropertyBooking by ID
GET/api/v1/propertybookings/{propertyBookingID}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/propertybookings/1236
URI Parameters
HideShow
propertyBookingID
number (required) Example: 1236

The unique identifier for the propertyBookingID.

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/propertybookings",
  "has_more": true,
  "data": {
    "PropertyBookingID": 4452,
    "PropertyID": "167",
    "CheckIn": 20170730,
    "CheckInTime": 15,
    "CheckInTimeMinutes": 0,
    "CheckOut": 20170805,
    "CheckOutTime": 11,
    "CheckOutTimeMinutes": 0,
    "Guest": "guest",
    "GuestPhone": "12345",
    "GuestEmail": "guest@email.com",
    "NumberOfGuest": 0,
    "NumberOfPets": 0,
    "NumberOfChildren": 0,
    "IsOwner": "0",
    "BookingTags": "BeachChairs, MidClean",
    "ManualBookingTags": "PoolHeat, AllBedsAsKing",
    "ImportBookingID": 123,
    "PMSNote": "PMSNote",
    "PMSHousekeepingNote": "PMSHousekeepingNote",
    "BookingNote": "BookingNote",
    "InternalNote": "InternalNote",
    "CreateDate": 20170509,
    "Active": 1,
    "LinenCounts": "1,3,4,5"
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "PropertyBookingID": {
          "type": "number",
          "description": "Unique identifier for the property booking."
        },
        "PropertyID": {
          "type": "string",
          "description": "Associated Property Object."
        },
        "CheckIn": {
          "type": "number",
          "description": "Date of checkin."
        },
        "CheckInTime": {
          "type": "number",
          "description": "Hour of check in by 24 hour clock."
        },
        "CheckInTimeMinutes": {
          "type": "number",
          "description": "Minute value of check in, for example if check in is at 10:30, this value would be 30."
        },
        "CheckOut": {
          "type": "number",
          "description": "Date of check out."
        },
        "CheckOutTime": {
          "type": "number",
          "description": "Hour of check out by 24 hour clock."
        },
        "CheckOutTimeMinutes": {
          "type": "number",
          "description": "Minute value of check out, for example if check in is at 10:30, this value would be 30."
        },
        "Guest": {
          "type": "string"
        },
        "GuestPhone": {
          "type": "string"
        },
        "GuestEmail": {
          "type": "string"
        },
        "NumberOfGuest": {
          "type": "number",
          "description": "Number of people staying for this booking."
        },
        "NumberOfPets": {
          "type": "number",
          "description": "Number of Pets staying for this booking."
        },
        "NumberOfChildren": {
          "type": "number",
          "description": "Number of children staying for this booking."
        },
        "IsOwner": {
          "type": "string",
          "enum": [
            "0",
            "1",
            "2"
          ],
          "description": "0 = Not an owner, 1 = Is an owner, 2 = Is an owner guest"
        },
        "BookingTags": {
          "type": "string",
          "description": "Tags used for generating tasks on the calendar.  Used in conjunction with the Task Rules."
        },
        "ManualBookingTags": {
          "type": "string",
          "description": "Tags used for generating tasks on the calendar.  Used in conjunction with the Task Rules. This field is not editable by integrations."
        },
        "ImportBookingID": {
          "type": "number"
        },
        "PMSNote": {
          "type": "string"
        },
        "PMSHousekeepingNote": {
          "type": "string"
        },
        "BookingNote": {
          "type": "string"
        },
        "InternalNote": {
          "type": "string"
        },
        "CreateDate": {
          "type": "number",
          "description": "Created Date of the Property Bookings"
        },
        "Active": {
          "type": "number",
          "description": "Property bookings is active or not"
        },
        "LinenCounts": {
          "type": "string",
          "description": "Properties each Linen Count"
        }
      }
    }
  }
}

Create PropertyBooking
POST/api/v1/propertybookings

Note: Need Auth token in header for this api .

Example URI

POST https://api.vrscheduler.com/api/v1/propertybookings
Request
HideShow
Headers
Content-Type: application/json
Authorization: VRS <access_token>
Body
{
  "PropertyID": 167,
  "CheckIn": 20170730,
  "CheckInTime": 15,
  "CheckInTimeMinutes": 0,
  "CheckOut": 20170805,
  "CheckOutTime": 11,
  "CheckOutTimeMinutes": 0,
  "Guest": "guest",
  "GuestPhone": "12345",
  "GuestEmail": "guest@email.com",
  "NumberOfGuest": 0,
  "NumberOfPets": 0,
  "NumberOfChildren": 0,
  "IsOwner": "0",
  "BookingTags": "BeachChairs, MidClean",
  "Active": 1,
  "ImportBookingID": "imp",
  "BookingNote": "bn",
  "InternalNote": "IN",
  "PMSNote": "pms",
  "PMSHousekeepingNote": "pmsh",
  "LinenCounts": "1,3,4,5"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "PropertyID": {
      "type": "number",
      "description": "Associated Property Object."
    },
    "CheckIn": {
      "type": "number",
      "description": "Date of checkin."
    },
    "CheckInTime": {
      "type": "number",
      "description": "Hour of check in by 24 hour clock."
    },
    "CheckInTimeMinutes": {
      "type": "number",
      "description": "Minute value of check in, for example if check in is at 10:30, this value would be 30."
    },
    "CheckOut": {
      "type": "number",
      "description": "Date of check out."
    },
    "CheckOutTime": {
      "type": "number",
      "description": "Hour of check out by 24 hour clock."
    },
    "CheckOutTimeMinutes": {
      "type": "number",
      "description": "Minute value of check out, for example if check in is at 10:30, this value would be 30."
    },
    "Guest": {
      "type": "string"
    },
    "GuestPhone": {
      "type": "string"
    },
    "GuestEmail": {
      "type": "string"
    },
    "NumberOfGuest": {
      "type": "number",
      "description": "Number of people staying for this booking."
    },
    "NumberOfPets": {
      "type": "number",
      "description": "Number of Pets staying for this booking."
    },
    "NumberOfChildren": {
      "type": "number",
      "description": "Number of children staying for this booking."
    },
    "IsOwner": {
      "type": "string",
      "enum": [
        "0",
        "1",
        "2"
      ],
      "description": "0 = Not an owner, 1 = Is an owner, 2 = Is an owner guest"
    },
    "BookingTags": {
      "type": "string",
      "description": "Tags used for generating tasks on the calendar.  Used in conjunction with the Task Rules."
    },
    "Active": {
      "type": "number",
      "description": "Property bookings is active or not"
    },
    "ImportBookingID": {
      "type": "string",
      "description": "Provide the ImportBookingID"
    },
    "BookingNote": {
      "type": "string",
      "description": "This is the Global note"
    },
    "InternalNote": {
      "type": "string",
      "description": "Provide Internal Booking Note"
    },
    "PMSNote": {
      "type": "string",
      "description": "PMS Note"
    },
    "PMSHousekeepingNote": {
      "type": "string",
      "description": "(string) - PMSHousekeepingNote"
    },
    "LinenCounts": {
      "type": "string",
      "description": "Properties each Linen Count"
    }
  },
  "required": [
    "PropertyID",
    "CheckIn",
    "CheckInTime"
  ]
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "propertybookings": [
    {
      "PropertyID": 167,
      "CheckIn": 20170730,
      "CheckInTime": 15,
      "CheckInTimeMinutes": 0,
      "CheckOut": 20170805,
      "CheckOutTime": 11,
      "CheckOutTimeMinutes": 0,
      "Guest": "guest",
      "GuestPhone": "12345",
      "GuestEmail": "guest@email.com",
      "NumberOfGuest": 0,
      "NumberOfPets": 0,
      "NumberOfChildren": 0,
      "IsOwner": "0",
      "BookingTags": "BeachChairs, MidClean",
      "Active": 1,
      "ImportBookingID": "imp",
      "BookingNote": "bn",
      "InternalNote": "IN",
      "PMSNote": "pms",
      "PMSHousekeepingNote": "pmsh",
      "LinenCounts": "1,3,4,5"
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "propertybookings": {
      "type": "array"
    }
  }
}

Update PropertyBooking
PUT/api/v1/propertybookings/{propertyBookingID}

Note: Need Auth token in header for this api Note: Some or All Fields of property booking can be updated.

Example URI

PUT https://api.vrscheduler.com/api/v1/propertybookings/1236
URI Parameters
HideShow
propertyBookingID
number (required) Example: 1236

The unique identifier for the propertyBookingID. .

Request
HideShow
Headers
Content-Type: application/json
Authorization: VRS <access_token>
Body
{
  "propertybookings": [
    {
      "PropertyID": 167,
      "CheckIn": 20170730,
      "CheckInTime": 15,
      "CheckInTimeMinutes": 0,
      "CheckOut": 20170805,
      "CheckOutTime": 11,
      "CheckOutTimeMinutes": 0,
      "Guest": "guest",
      "GuestPhone": "12345",
      "GuestEmail": "guest@email.com",
      "NumberOfGuest": 0,
      "NumberOfPets": 0,
      "NumberOfChildren": 0,
      "IsOwner": "0",
      "BookingTags": "BeachChairs, MidClean",
      "Active": 1,
      "ImportBookingID": "imp",
      "BookingNote": "bn",
      "InternalNote": "IN",
      "PMSNote": "pms",
      "PMSHousekeepingNote": "pmsh",
      "LinenCounts": "1,3,4,5"
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "propertybookings": {
      "type": "array"
    }
  }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "propertybookings": [
    {
      "PropertyID": 167,
      "CheckIn": 20170730,
      "CheckInTime": 15,
      "CheckInTimeMinutes": 0,
      "CheckOut": 20170805,
      "CheckOutTime": 11,
      "CheckOutTimeMinutes": 0,
      "Guest": "guest",
      "GuestPhone": "12345",
      "GuestEmail": "guest@email.com",
      "NumberOfGuest": 0,
      "NumberOfPets": 0,
      "NumberOfChildren": 0,
      "IsOwner": "0",
      "BookingTags": "BeachChairs, MidClean",
      "Active": 1,
      "ImportBookingID": "imp",
      "BookingNote": "bn",
      "InternalNote": "IN",
      "PMSNote": "pms",
      "PMSHousekeepingNote": "pmsh",
      "LinenCounts": "1,3,4,5"
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "propertybookings": {
      "type": "array"
    }
  }
}

Delete PropertyBooking by ID
DELETE/api/v1/propertybookings/{propertyBookingID}

Note: Need Auth token in header for this api

Example URI

DELETE https://api.vrscheduler.com/api/v1/propertybookings/1236
URI Parameters
HideShow
propertyBookingID
number (required) Example: 1236

The unique identifier for the propertyBookingID.

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "ReasonCode": 0,
  "ReasonText": "Data is succesfully deleted"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "ReasonCode": {
      "type": "number"
    },
    "ReasonText": {
      "type": "string"
    }
  }
}

Staff

The Staff object represents staff members.

Note: All Arguments are Optional.

Get Staff
GET/api/v1/staff?Sort={Sort}&per_page={per_page}&page={page}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/staff?Sort=Name&per_page=20&page=1
URI Parameters
HideShow
Sort
string (optional) Default: StaffID asc Example: Name

Example 2: sort=Name asc, CreateDate desc
Available Sort Fields: StaffID, Name, CreateDate
Available Sort Order: asc, desc (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/staff",
  "has_more": true,
  "data": {
    "StaffID": 132,
    "Name": "Carol Worker",
    "Abbreviation": "carol",
    "Email": "carol@vrscheduler.com",
    "Phone": "+1 541-999-9999",
    "CountryID": "United States",
    "Active": true,
    "CreateDate": 20190302
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "StaffID": {
          "type": "number",
          "description": "Unique identifier for the staff."
        },
        "Name": {
          "type": "string",
          "description": "Full name of staff member."
        },
        "Abbreviation": {
          "type": "string",
          "description": "10 character abbreviation of the staff member used in scheduling."
        },
        "Email": {
          "type": "string",
          "description": "Email address of staff member."
        },
        "Phone": {
          "type": "string",
          "description": "Phone number of staff member."
        },
        "CountryID": {
          "type": "string",
          "description": "Country ID for phone number if outside US. See list of CountryIDs."
        },
        "Active": {
          "type": "boolean",
          "description": "Whether the staff member is active."
        },
        "CreateDate": {
          "type": "number",
          "description": "Creation date."
        }
      }
    }
  }
}

Get Staff by ID
GET/api/v1/staff/{StaffID}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/staff/132
URI Parameters
HideShow
StaffID
number (required) Example: 132

Unique identifier for the staff.

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/staff",
  "has_more": true,
  "data": {
    "StaffID": 132,
    "Name": "Carol Worker",
    "Abbreviation": "carol",
    "Email": "carol@vrscheduler.com",
    "Phone": "+1 541-999-9999",
    "CountryID": "United States",
    "Active": true,
    "CreateDate": 20190302
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "StaffID": {
          "type": "number",
          "description": "Unique identifier for the staff."
        },
        "Name": {
          "type": "string",
          "description": "Full name of staff member."
        },
        "Abbreviation": {
          "type": "string",
          "description": "10 character abbreviation of the staff member used in scheduling."
        },
        "Email": {
          "type": "string",
          "description": "Email address of staff member."
        },
        "Phone": {
          "type": "string",
          "description": "Phone number of staff member."
        },
        "CountryID": {
          "type": "string",
          "description": "Country ID for phone number if outside US. See list of CountryIDs."
        },
        "Active": {
          "type": "boolean",
          "description": "Whether the staff member is active."
        },
        "CreateDate": {
          "type": "number",
          "description": "Creation date."
        }
      }
    }
  }
}

StaffTasks

The StaffTask object represents staff assigned to each task along with payroll information.

Get StaffTasks
GET/api/v1/stafftasks?StaffID={StaffID}&TaskRuleID={TaskRuleID}&TaskID={TaskID}&PayType={PayType}&Approved={Approved}&PropertyID={PropertyID}&ApprovedStartDate={ApprovedStartDate}&ApprovedEndDate={ApprovedEndDate}&Completed={Completed}&CompletedStartDate={CompletedStartDate}&CompletedEndDate={CompletedEndDate}&Sort={Sort}&per_page={per_page}&page={page}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/stafftasks?StaffID=123&TaskRuleID=12345&TaskID=123&PayType=1&Approved=1&PropertyID=123&ApprovedStartDate=20190101&ApprovedEndDate=20190102&Completed=1&CompletedStartDate=20211207&CompletedEndDate=20211207&Sort=StaffName&per_page=20&page=1
URI Parameters
HideShow
StaffID
string (optional) Example: 123
TaskRuleID
string (optional) Example: 12345
TaskID
string (optional) Example: 123
PayType
number (optional) Example: 1
Approved
number (optional) Example: 1
  • 0 No Status

  • 1 Approved

  • 2 Paid

  • 3 Flagged

PropertyID
number (optional) Example: 123
ApprovedStartDate
string (optional) Example: 20190101
ApprovedEndDate
string (optional) Example: 20190102
Completed
boolean (optional) Example: 1
CompletedStartDate
string (optional) Example: 20211207
CompletedEndDate
string (optional) Example: 20211207
Sort
string (optional) Default: StaffTaskID Example: StaffName

Example 2: sort=StaffName asc, CompleteConfirmedDate asc
Available Sort Fields: StaffID, StaffTaskID, StaffName, TaskID, CompleteConfirmedDate
Available Sort Order: asc, desc (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/stafftasks",
  "has_more": true,
  "data": {
    "StaffTaskID": 72157,
    "TaskID": 81530,
    "TaskName": "Check Out Clean Task Test",
    "TaskRuleID": 57,
    "StaffID": 134,
    "StaffName": "Ann Mason",
    "PayType": 3,
    "PayRate": 0,
    "PiecePay": 1.23,
    "TimeTracked": "00:04",
    "Completed": true,
    "CompleteConfirmedDate": "20170624",
    "Pay": 0,
    "Approved": 0,
    "ApprovedDate": "20190101",
    "CompletedStartDate": "20211207",
    "CompletedEndDate": "20211207",
    "PropertyID": "165"
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "StaffTaskID": {
          "type": "number"
        },
        "TaskID": {
          "type": "number"
        },
        "TaskName": {
          "type": "string"
        },
        "TaskRuleID": {
          "type": "number"
        },
        "StaffID": {
          "type": "number"
        },
        "StaffName": {
          "type": "string"
        },
        "PayType": {
          "type": "number"
        },
        "PayRate": {
          "type": "number"
        },
        "PiecePay": {
          "type": "number"
        },
        "TimeTracked": {
          "type": "string"
        },
        "Completed": {
          "type": "boolean"
        },
        "CompleteConfirmedDate": {
          "type": "string"
        },
        "Pay": {
          "type": "number"
        },
        "Approved": {
          "type": "number"
        },
        "ApprovedDate": {
          "type": "string"
        },
        "CompletedStartDate": {
          "type": "string"
        },
        "CompletedEndDate": {
          "type": "string"
        },
        "PropertyID": {
          "type": "string"
        }
      }
    }
  }
}

Get StaffTask by ID
GET/api/v1/stafftasks/{StaffTaskID}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/stafftasks/1236
URI Parameters
HideShow
StaffTaskID
number (required) Example: 1236

The unique identifier for the StaffTaskID.

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/stafftasks",
  "has_more": true,
  "data": {
    "StaffTaskID": 72157,
    "TaskID": 81530,
    "TaskName": "Check Out Clean Task Test",
    "TaskRuleID": 57,
    "StaffID": 134,
    "StaffName": "Ann Mason",
    "PayType": 3,
    "PayRate": 0,
    "PiecePay": 1.23,
    "TimeTracked": "00:04",
    "Completed": true,
    "CompleteConfirmedDate": "20170624",
    "Pay": 0,
    "Approved": 0,
    "ApprovedDate": "20190101",
    "CompletedStartDate": "20211207",
    "CompletedEndDate": "20211207",
    "PropertyID": "165"
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "StaffTaskID": {
          "type": "number"
        },
        "TaskID": {
          "type": "number"
        },
        "TaskName": {
          "type": "string"
        },
        "TaskRuleID": {
          "type": "number"
        },
        "StaffID": {
          "type": "number"
        },
        "StaffName": {
          "type": "string"
        },
        "PayType": {
          "type": "number"
        },
        "PayRate": {
          "type": "number"
        },
        "PiecePay": {
          "type": "number"
        },
        "TimeTracked": {
          "type": "string"
        },
        "Completed": {
          "type": "boolean"
        },
        "CompleteConfirmedDate": {
          "type": "string"
        },
        "Pay": {
          "type": "number"
        },
        "Approved": {
          "type": "number"
        },
        "ApprovedDate": {
          "type": "string"
        },
        "CompletedStartDate": {
          "type": "string"
        },
        "CompletedEndDate": {
          "type": "string"
        },
        "PropertyID": {
          "type": "string"
        }
      }
    }
  }
}

Tasks

The Task object represents physical tasks. Each Task object is assigned to one Task.

Note: All Arguments are Optional.

Get Tasks
GET/api/v1/tasks?TaskRuleID={TaskRuleID}&PropertyBookingID={PropertyBookingID}&PropertyID={PropertyID}&Approved={Approved}&ApprovedStartDate={ApprovedStartDate}&ApprovedEndDate={ApprovedEndDate}&Completed={Completed}&CompletedStartDate={CompletedStartDate}&CompletedEndDate={CompletedEndDate}&Billable=&TaskStartDate={TaskStartDate}&TaskEndDate={TaskEndDate}&Sort={Sort}&per_page={per_page}&page={page}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/tasks?TaskRuleID=1&PropertyBookingID=1204&PropertyID=1&Approved=1&ApprovedStartDate=20190101&ApprovedEndDate=20190101&Completed=1&CompletedStartDate=20190101&CompletedEndDate=20190201&Billable=&TaskStartDate=20190101&TaskEndDate=20190101&Sort=TaskName&per_page=20&page=1
URI Parameters
HideShow
TaskRuleID
number (optional) Example: 1
PropertyBookingID
number (optional) Example: 1204
PropertyID
number (optional) Example: 1
Approved
number (optional) Example: 1
ApprovedStartDate
string (required) Example: 20190101
ApprovedEndDate
string (optional) Example: 20190101
Completed
number (optional) Example: 1
CompletedStartDate
string (optional) Example: 20190101
CompletedEndDate
string (optional) Example: 20190201
TaskStartDate
string (optional) Example: 20190101
TaskEndDate
string (optional) Example: 20190101
Sort
string (optional) Default: TaskID asc Example: TaskName

Example 2: sort=TaskID asc, TaskName asc
Available Sort Fields: TaskID, TaskDate, TaskName, TaskStartDate, MinTimeToComplete
Available Sort Order: asc, desc (asc if not specified)

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/tasks",
  "has_more": true,
  "data": {
    "TaskID": 132,
    "PropertyBookingID": 2,
    "TaskRuleID": "58",
    "PropertyID": 4,
    "TaskName": "Deep Clean",
    "TaskDescription": "Bring the whole kit.",
    "Approved": true,
    "ApprovedDate": 20190727,
    "Completed": true,
    "Billable": true,
    "LaborAmount": 50,
    "MaterialsAmount": 45,
    "TaskDate": 20190813,
    "CompleteConfirmedDate": 20190813,
    "CreateDate": 20190302,
    "TaskActive": true,
    "TaskImages": [
      {
        "TaskImageID": 123,
        "Image": "https://images.vrscheduler.com/70/IMG_5076.JPG"
      }
    ]
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "TaskID": {
          "type": "number",
          "description": "Unique identifier for the task."
        },
        "PropertyBookingID": {
          "type": "number",
          "description": "Associated PropertyBooking Object."
        },
        "TaskRuleID": {
          "type": "string"
        },
        "PropertyID": {
          "type": "number",
          "description": "Associated Property Object."
        },
        "TaskName": {
          "type": "string",
          "description": "Name of the task."
        },
        "TaskDescription": {
          "type": "string",
          "description": "Notes with details of the task."
        },
        "Approved": {
          "type": "boolean",
          "description": "Flag if the Task is approved to be billed."
        },
        "ApprovedDate": {
          "type": "number",
          "description": "The date the Task was Approved for billing."
        },
        "Completed": {
          "type": "boolean",
          "description": "Flag if the Task has been completed."
        },
        "Billable": {
          "type": "boolean",
          "description": "Flag if the Task is billable."
        },
        "LaborAmount": {
          "type": "number",
          "description": "Amount to bill for labor for this task."
        },
        "MaterialsAmount": {
          "type": "number",
          "description": "Amount to bill for materials for this task."
        },
        "TaskDate": {
          "type": "number",
          "description": "Date the task is scheduled to be done on."
        },
        "CompleteConfirmedDate": {
          "type": "number",
          "description": "Date the task was completed on."
        },
        "CreateDate": {
          "type": "number",
          "description": "Creation date."
        },
        "TaskActive": {
          "type": "boolean",
          "description": "Define if task is active/inactive"
        },
        "TaskImages": {
          "type": "array"
        }
      }
    }
  }
}

Get Task by ID
GET/api/v1/tasks/{TaskID}

Note: Need Auth token in header for this api

Example URI

GET https://api.vrscheduler.com/api/v1/tasks/132
URI Parameters
HideShow
TaskID
number (required) Example: 132

Unique identifier for the task.

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/tasks",
  "has_more": true,
  "data": {
    "TaskID": 132,
    "PropertyBookingID": 2,
    "TaskRuleID": "58",
    "PropertyID": 4,
    "TaskName": "Deep Clean",
    "TaskDescription": "Bring the whole kit.",
    "Approved": true,
    "ApprovedDate": 20190727,
    "Completed": true,
    "Billable": true,
    "LaborAmount": 50,
    "MaterialsAmount": 45,
    "TaskDate": 20190813,
    "CompleteConfirmedDate": 20190813,
    "CreateDate": 20190302,
    "TaskActive": true,
    "TaskImages": [
      {
        "TaskImageID": 123,
        "Image": "https://images.vrscheduler.com/70/IMG_5076.JPG"
      }
    ]
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "properties": {
        "TaskID": {
          "type": "number",
          "description": "Unique identifier for the task."
        },
        "PropertyBookingID": {
          "type": "number",
          "description": "Associated PropertyBooking Object."
        },
        "TaskRuleID": {
          "type": "string"
        },
        "PropertyID": {
          "type": "number",
          "description": "Associated Property Object."
        },
        "TaskName": {
          "type": "string",
          "description": "Name of the task."
        },
        "TaskDescription": {
          "type": "string",
          "description": "Notes with details of the task."
        },
        "Approved": {
          "type": "boolean",
          "description": "Flag if the Task is approved to be billed."
        },
        "ApprovedDate": {
          "type": "number",
          "description": "The date the Task was Approved for billing."
        },
        "Completed": {
          "type": "boolean",
          "description": "Flag if the Task has been completed."
        },
        "Billable": {
          "type": "boolean",
          "description": "Flag if the Task is billable."
        },
        "LaborAmount": {
          "type": "number",
          "description": "Amount to bill for labor for this task."
        },
        "MaterialsAmount": {
          "type": "number",
          "description": "Amount to bill for materials for this task."
        },
        "TaskDate": {
          "type": "number",
          "description": "Date the task is scheduled to be done on."
        },
        "CompleteConfirmedDate": {
          "type": "number",
          "description": "Date the task was completed on."
        },
        "CreateDate": {
          "type": "number",
          "description": "Creation date."
        },
        "TaskActive": {
          "type": "boolean",
          "description": "Define if task is active/inactive"
        },
        "TaskImages": {
          "type": "array"
        }
      }
    }
  }
}

Create Task
POST/api/v1/tasks

Note: Need Auth token in header for this api.

Example URI

POST https://api.vrscheduler.com/api/v1/tasks
Request
HideShow
Headers
Content-Type: application/json
Authorization: VRS <access_token>
Body
{
  "PropertyID": 1,
  "TaskRuleID": 1,
  "TaskName": "TaskName",
  "TaskDescription": "Some Description",
  "TaskStartDate": "2019-01-01",
  "TaskStartTime": 10,
  "TaskCompleteByDate": "2019-01-01",
  "TaskCompleteByTime": 10,
  "TaskDate": "2019-01-01",
  "TaskTime": 10,
  "PropertyBookingID": 12345
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "PropertyID": {
      "type": "number"
    },
    "TaskRuleID": {
      "type": "number"
    },
    "TaskName": {
      "type": "string"
    },
    "TaskDescription": {
      "type": "string"
    },
    "TaskStartDate": {
      "type": "string"
    },
    "TaskStartTime": {
      "type": "number"
    },
    "TaskCompleteByDate": {
      "type": "string"
    },
    "TaskCompleteByTime": {
      "type": "number"
    },
    "TaskDate": {
      "type": "string"
    },
    "TaskTime": {
      "type": "number"
    },
    "PropertyBookingID": {
      "type": "number"
    }
  }
}
Response  201
HideShow
Headers
Content-Type: application/json
Body
{
  "TaskID": 2166295,
  "TaskName": "TaskName",
  "TaskDescription": "Some Description",
  "CreateDate": "20210301",
  "TaskStartDate": "20210301",
  "TaskStartTime": 10,
  "TaskCompleteByDate": "20210301",
  "TaskCompleteByTime": 10,
  "TaskDate": "20210301",
  "TaskTime": 10,
  "PropertyID": 171,
  "PropertyBookingID": 12345
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "TaskID": {
      "type": "number"
    },
    "TaskName": {
      "type": "string"
    },
    "TaskDescription": {
      "type": "string",
      "description": "2"
    },
    "CreateDate": {
      "type": "string"
    },
    "TaskStartDate": {
      "type": "string"
    },
    "TaskStartTime": {
      "type": "number"
    },
    "TaskCompleteByDate": {
      "type": "string"
    },
    "TaskCompleteByTime": {
      "type": "number"
    },
    "TaskDate": {
      "type": "string"
    },
    "TaskTime": {
      "type": "number"
    },
    "PropertyID": {
      "type": "number"
    },
    "PropertyBookingID": {
      "type": "number"
    }
  }
}

Create Task With Image
POST/api/v1/tasksWithImage

Note: Need Auth token in header for this api. The Request body is of type form-data instead of Raw. Please add ‘request’ key under Key column and the JSON data under Value column of form-data. Please add ‘Image1’ key under Key column and the image file under Value column of form-data. Ensure that the key name (which is ‘Image1’ here) of image should match the ‘ImageKey’ node in the JSON request. Include another key name such as “Image2” in the key and upload the image file under the value column if you want to upload more than one image. Make sure in the request JSON body’s Images array to have new set of “ImageKey”: “Image2”.

Example URI

POST https://api.vrscheduler.com/api/v1/tasksWithImage
Request
HideShow
Headers
Content-Type: multipart/form-data
Authorization: VRS <access_token>
Body
{
  "request": {
    "PropertyID": 1,
    "TaskRuleID": 1,
    "TaskName": "TaskName",
    "TaskDescription": "Some Description",
    "TaskStartDate": "2019-01-01",
    "TaskStartTime": 10,
    "TaskCompleteByDate": "2019-01-01",
    "TaskCompleteByTime": 10,
    "TaskDate": "2019-01-01",
    "TaskTime": 10,
    "PropertyBookingID": 12345,
    "Images": [
      {
        "ImageKey": "Image1"
      }
    ]
  },
  "Image1": "image file"
}
Schema
{
  "type": "object",
  "properties": {
    "request": {
      "type": "object",
      "properties": {
        "PropertyID": {
          "type": "number"
        },
        "TaskRuleID": {
          "type": "number"
        },
        "TaskName": {
          "type": "string"
        },
        "TaskDescription": {
          "type": "string"
        },
        "TaskStartDate": {
          "type": "string"
        },
        "TaskStartTime": {
          "type": "number"
        },
        "TaskCompleteByDate": {
          "type": "string"
        },
        "TaskCompleteByTime": {
          "type": "number"
        },
        "TaskDate": {
          "type": "string"
        },
        "TaskTime": {
          "type": "number"
        },
        "PropertyBookingID": {
          "type": "number"
        },
        "Images": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "ImageKey": {
                "type": "string"
              }
            }
          }
        }
      }
    },
    "Image1": {
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-04/schema#"
}
Response  201
HideShow
Headers
Content-Type: application/json
Body
{
  "TaskID": 2166295,
  "TaskName": "TaskName",
  "TaskDescription": "Some Description",
  "CreateDate": "20210301",
  "TaskStartDate": "20210301",
  "TaskStartTime": 10,
  "TaskCompleteByDate": "20210301",
  "TaskCompleteByTime": 10,
  "TaskDate": "20210301",
  "TaskTime": 10,
  "PropertyID": 171,
  "PropertyBookingID": 12345
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "TaskID": {
      "type": "number"
    },
    "TaskName": {
      "type": "string"
    },
    "TaskDescription": {
      "type": "string",
      "description": "2"
    },
    "CreateDate": {
      "type": "string"
    },
    "TaskStartDate": {
      "type": "string"
    },
    "TaskStartTime": {
      "type": "number"
    },
    "TaskCompleteByDate": {
      "type": "string"
    },
    "TaskCompleteByTime": {
      "type": "number"
    },
    "TaskDate": {
      "type": "string"
    },
    "TaskTime": {
      "type": "number"
    },
    "PropertyID": {
      "type": "number"
    },
    "PropertyBookingID": {
      "type": "number"
    }
  }
}

Update Task
PUT/api/v1/tasks/{TaskID}

Note: Need Auth token in header for this api

Example URI

PUT https://api.vrscheduler.com/api/v1/tasks/132
URI Parameters
HideShow
TaskID
number (required) Example: 132

Unique identifier for the task.

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "TaskID": 2166295,
  "TaskName": "TaskName",
  "TaskDescription": "Some Description",
  "CreateDate": "20210301",
  "TaskStartDate": "20210301",
  "TaskStartTime": 10,
  "TaskCompleteByDate": "20210301",
  "TaskCompleteByTime": 10,
  "TaskDate": "20210301",
  "TaskTime": 10,
  "PropertyID": 171,
  "PropertyBookingID": 12345
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "TaskID": {
      "type": "number"
    },
    "TaskName": {
      "type": "string"
    },
    "TaskDescription": {
      "type": "string",
      "description": "2"
    },
    "CreateDate": {
      "type": "string"
    },
    "TaskStartDate": {
      "type": "string"
    },
    "TaskStartTime": {
      "type": "number"
    },
    "TaskCompleteByDate": {
      "type": "string"
    },
    "TaskCompleteByTime": {
      "type": "number"
    },
    "TaskDate": {
      "type": "string"
    },
    "TaskTime": {
      "type": "number"
    },
    "PropertyID": {
      "type": "number"
    },
    "PropertyBookingID": {
      "type": "number"
    }
  }
}

Get Task Form Elements
GET/api/v1/taskformelements?TaskID={TaskID}&PropertyID={PropertyID}&CompletedStartDate={CompletedStartDate}&CompletedEndDate={CompletedEndDate}&ChecklistItemID={ChecklistItemID}&Sort={Sort}&per_page={per_page}&page={page}

Note: Need Auth token in header for this api

Note: Filters are important to make use of this endpoint

Example URI

GET https://api.vrscheduler.com/api/v1/taskformelements?TaskID=132&PropertyID=456&CompletedStartDate=20230101&CompletedEndDate=20230131&ChecklistItemID=789&Sort=CompleteConfirmedDate&per_page=20&page=1
URI Parameters
HideShow
TaskID
number (required) Example: 132

Unique identifier for the staff.

PropertyID
number (required) Example: 456

Unique identifier for the property associated with the task.

CompletedStartDate
string (required) Example: 20230101

The start date for filtering tasks by completion date, formatted as YYYYMMDD.

CompletedEndDate
string (required) Example: 20230131

The end date for filtering tasks by completion date, formatted as YYYYMMDD.

ChecklistItemID
number (required) Example: 789

Unique identifier for the checklist item.

Sort
string (required) Example: CompleteConfirmedDate

The field by which to sort the results, e.g., CompleteConfirmedDate.

per_page
number (optional) Default: 20 Example: 20

Display number of results in a page

page
number (optional) Default: 1 Example: 1

Number of pages in a pagination

Request
HideShow
Headers
Authorization: VRS <access_token>
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "url": "/api/v1/taskformelements",
  "has_more": true,
  "data": [
    {
      "TaskID": 6667027,
      "CompleteConfirmedDate": "20210614",
      "ChecklistItem": "Stock Necessary Kitchen Items",
      "InternalName": "Kitchen Stocking Checklist",
      "Options": "Paper towels x 1\\r\\nDish Soap x 1\\r\\nDishwasher tabs x 4\\r\\nDish Sponge x 1\\r\\nBlack Garbage Bags x 3\\r\\nCompost bags x 3\\r\\nCoffee Filters min 24\\r\\nSalt and Pepper x 1\\r\\nlight bulbs",
      "Checked": 0,
      "Image": "kitchen gally.jpeg",
      "EnteredValue": "Dishwasher tabs x 4\\r",
      "EnteredValueAmount": 0,
      "ImageUploaded": "Dish.jpeg",
      "OptionSelected": "0",
      "ColumnValue": 3
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "has_more": {
      "type": "boolean"
    },
    "data": {
      "type": "array"
    }
  }
}

Generated by aglio on 01 Oct 2024