Skip to content

Get a vendor with work orders, expenses, and compliance

GET
/api/vendors/{id}
curl --request GET \
--url https://api.getvespy.com/api/vendors/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \
--header 'Authorization: Bearer <token>'
id
required
string format: uuid

Default Response

Media typeapplication/json
object
activeWorkOrders
required
Array<object>
object
assignedStaffUserId
required
string format: uuid
nullable
assignedVendorId
required
string format: uuid
nullable
category
required
string
nullable
Allowed values: plumbing electrical hvac appliance structural pest_control landscaping general other
completedAt
required
string format: date-time
nullable
createdAt
required
string format: date-time
deletedAt
required
string format: date-time
nullable
description
required
string
nullable
entryInstructions
required
string
nullable
id
required
string format: uuid
organizationId
required
string format: uuid
priority
required
string
Allowed values: low normal high emergency
propertyId
required
string format: uuid
relations
object
assignedStaffUser
required
object
fullName
required
string
>= 1 characters <= 160 characters
id
required
string format: uuid
assignedVendor
required
object
id
required
string format: uuid
name
required
string
>= 1 characters <= 160 characters
property
required
object
id
required
string format: uuid
name
required
string
>= 1 characters <= 160 characters
tenant
required
object
fullName
required
string
>= 1 characters <= 160 characters
id
required
string format: uuid
unit
required
object
id
required
string format: uuid
unitNumber
required
string
nullable >= 1 characters <= 32 characters
scheduledAt
required
string format: date-time
nullable
source
required
string
Allowed values: staff tenant
status
required
string
Allowed values: open in_progress completed cancelled
subcategory
required
string
nullable <= 100 characters
tenantId
required
string format: uuid
nullable
title
required
string
>= 1 characters <= 160 characters
unitId
required
string format: uuid
nullable
updatedAt
required
string format: date-time
complianceDocuments
required
Array<object>
object
aiAnalysis
required
object
analyzedAt
required
Any of:
string format: date-time
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/
error
required
Any of:
object
code
required
string
>= 1 characters <= 80 characters
message
required
string
>= 1 characters <= 500 characters
model
required
Any of:
string
>= 1 characters <= 255 characters
result
required
Any of:
Any of:
One of:
object
confidence
required
number
<= 1
contentKind
required
string
Allowed values: document
dates
required
Array<object>
object
date
required
string format: date
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$/
label
required
string
>= 1 characters <= 120 characters
details
required
object
endDate
required
Any of:
string format: date
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$/
landlordNames
required
Array<string>
propertyAddress
required
Any of:
string
>= 1 characters <= 1000 characters
rentAmountCents
required
Any of:
integer
<= 9007199254740991
securityDepositCents
required
Any of:
integer
<= 9007199254740991
startDate
required
Any of:
string format: date
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$/
tenantNames
required
Array<string>
documentType
required
string
Allowed values: lease
parties
required
Array<object>
object
name
required
string
>= 1 characters <= 255 characters
role
required
Any of:
string
>= 1 characters <= 120 characters
summary
required
string
>= 1 characters <= 4000 characters
status
required
string
Allowed values: not_requested queued processing completed failed unsupported
category
required
string
nullable
createdAt
required
string format: date-time
description
required
string
nullable
entityId
required
string format: uuid
nullable
entityType
required
string
nullable
Allowed values: property unit tenant owner payment expense lease vendor work_order charge expense_payment
expiresAt
required
string format: date-time
nullable
id
required
string format: uuid
mimeType
required
string
>= 1 characters <= 255 characters
name
required
string
>= 1 characters <= 255 characters
organizationId
required
string format: uuid
sizeBytes
required
integer
storagePath
required
string
>= 1 characters
tags
required
Array<string>
nullable
updatedAt
required
string format: date-time
uploadedBy
required
string format: uuid
nullable
uploadedByName
required
string
nullable
complianceSummary
required
object
expiredCount
required
integer
expiringSoonCount
required
integer
missingRequirements
required
Array<string>
Allowed values: coi w9
status
required
string
Allowed values: compliant warning missing expired
totalDocuments
required
integer
notes
required
Array<object>
object
body
required
string
>= 1 characters <= 4000 characters
createdAt
required
string format: date-time
createdByUser
required
object
fullName
required
string
>= 1 characters <= 160 characters
id
required
string format: uuid
createdByUserId
required
string format: uuid
nullable
entityId
required
string format: uuid
entityType
required
string
Allowed values: property unit owner tenant lease vendor work_order
id
required
string format: uuid
visibility
required
string
Allowed values: organization_only tenant_shared vendor_shared tenant_vendor_shared
recentExpenses
required
Array<object>
object
amountCents
required
integer
>= 1
amountPaidCents
required
integer
category
required
string
Allowed values: maintenance utility tax insurance management other
categoryId
required
string format: uuid
nullable
createdAt
required
string format: date-time
description
required
string
nullable
id
required
string format: uuid
incurredOn
required
string format: date
lastPaidAt
required
string format: date-time
nullable
lease
required
object
endDate
required
string format: date
nullable
id
required
string format: uuid
startDate
required
string format: date
status
required
string
Allowed values: draft active terminated expired
leaseId
required
string format: uuid
nullable
name
required
string
nullable <= 160 characters
organizationId
required
string format: uuid
outstandingCents
required
integer
owner
required
object
fullName
required
string
id
required
string format: uuid
ownerId
required
string format: uuid
nullable
paymentStatus
required
string
Allowed values: pending partial paid
property
required
object
city
required
string
>= 1 characters <= 120 characters
id
required
string format: uuid
name
required
string
state
required
string
>= 2 characters <= 2 characters
propertyId
required
string format: uuid
nullable
status
required
string
Allowed values: active voided
unit
required
object
id
required
string format: uuid
unitNumber
required
string
nullable
unitId
required
string format: uuid
nullable
vendorId
required
string format: uuid
nullable
vendorName
required
string
nullable
workOrderId
required
string format: uuid
nullable
recentlyCompletedWorkOrders
required
Array<object>
object
assignedStaffUserId
required
string format: uuid
nullable
assignedVendorId
required
string format: uuid
nullable
category
required
string
nullable
Allowed values: plumbing electrical hvac appliance structural pest_control landscaping general other
completedAt
required
string format: date-time
nullable
createdAt
required
string format: date-time
deletedAt
required
string format: date-time
nullable
description
required
string
nullable
entryInstructions
required
string
nullable
id
required
string format: uuid
organizationId
required
string format: uuid
priority
required
string
Allowed values: low normal high emergency
propertyId
required
string format: uuid
relations
object
assignedStaffUser
required
object
fullName
required
string
>= 1 characters <= 160 characters
id
required
string format: uuid
assignedVendor
required
object
id
required
string format: uuid
name
required
string
>= 1 characters <= 160 characters
property
required
object
id
required
string format: uuid
name
required
string
>= 1 characters <= 160 characters
tenant
required
object
fullName
required
string
>= 1 characters <= 160 characters
id
required
string format: uuid
unit
required
object
id
required
string format: uuid
unitNumber
required
string
nullable >= 1 characters <= 32 characters
scheduledAt
required
string format: date-time
nullable
source
required
string
Allowed values: staff tenant
status
required
string
Allowed values: open in_progress completed cancelled
subcategory
required
string
nullable <= 100 characters
tenantId
required
string format: uuid
nullable
title
required
string
>= 1 characters <= 160 characters
unitId
required
string format: uuid
nullable
updatedAt
required
string format: date-time
vendor
required
object
createdAt
required
string format: date-time
deletedAt
required
string format: date-time
nullable
email
required
string format: email
nullable
id
required
string format: uuid
isActive
required
boolean
name
required
string
>= 1 characters <= 160 characters
notes
required
string
nullable <= 2000 characters
organizationId
required
string format: uuid
phone
required
string
nullable >= 7 characters <= 32 characters
trade
required
string
nullable >= 1 characters <= 120 characters
updatedAt
required
string format: date-time
userId
required
string format: uuid
nullable
Example
{
"activeWorkOrders": [
{
"category": "plumbing",
"priority": "low",
"source": "staff",
"status": "open"
}
],
"complianceDocuments": [
{
"aiAnalysis": {
"result": {
"contentKind": "document",
"documentType": "lease"
},
"status": "not_requested"
},
"entityType": "property"
}
],
"complianceSummary": {
"missingRequirements": [
"coi"
],
"status": "compliant"
},
"notes": [
{
"entityType": "property",
"visibility": "organization_only"
}
],
"recentExpenses": [
{
"category": "maintenance",
"lease": {
"status": "draft"
},
"paymentStatus": "pending",
"status": "active"
}
],
"recentlyCompletedWorkOrders": [
{
"category": "plumbing",
"priority": "low",
"source": "staff",
"status": "open"
}
]
}

Default Response

Media typeapplication/json
object
code
string
errors
Array<object>
object
code
required
string
message
required
string
path
required
string
message
required
string
Examplegenerated
{
"code": "example",
"errors": [
{
"code": "example",
"message": "example",
"path": "example"
}
],
"message": "example"
}

Default Response

Media typeapplication/json
object
code
string
errors
Array<object>
object
code
required
string
message
required
string
path
required
string
message
required
string
Examplegenerated
{
"code": "example",
"errors": [
{
"code": "example",
"message": "example",
"path": "example"
}
],
"message": "example"
}

Default Response

Media typeapplication/json
object
code
string
errors
Array<object>
object
code
required
string
message
required
string
path
required
string
message
required
string
Examplegenerated
{
"code": "example",
"errors": [
{
"code": "example",
"message": "example",
"path": "example"
}
],
"message": "example"
}

Default Response

Media typeapplication/json
object
code
string
errors
Array<object>
object
code
required
string
message
required
string
path
required
string
message
required
string
Examplegenerated
{
"code": "example",
"errors": [
{
"code": "example",
"message": "example",
"path": "example"
}
],
"message": "example"
}