Skip to main content

Work Orders

WorkOrder objects represent work orders from AppFolio®. Skywalk API allows you to obtain the following work order attributes from AppFolio®.

The WorkOrder Object#

Attributes


appfolioIdstring
Unique AppFolio ID for the work order.
Example:
"123"

workOrderNumberstring
Work Order Number for the work order.
Example:
"12345-1"

workOrderTypestring
Work Order Type for the work order.
Example:
"Internal"

occupancyIdstring
Occupancy for the work order; if set
Example:
"320"

unitTurnIdstring
Unit turn id for the work order; if set
Example:
null

vendorIdstring
Vendor ID for the work order.
Example:
null

prioritystring
Priority for the work order.
Example:
"Normal"

statusstring
Status for the work order.
Example:
"Ready to Bill"

jobDescriptionstring
Job description for the work order.
Example:
"Toilet is clogged!"

instructionsstring
Istructions for the work order.
Example:
null

createdAtstring
Date created at for the work order.
Example:
"01/01/2024"

createdBystring
Created by for the work order.
Example:
"Tenant"


More Attributes


âž•
workOrderIssuestring

âž•
recurringstring

âž•
submittedByTenantstring

âž•
requestingTenantstring

âž•
unitTurnCategorystring

âž•
surveyIdstring

âž•
vendorstring

âž•
primaryTenantstring

âž•
primaryTenantEmailstring

âž•
primaryTenantPhoneNumberstring

âž•
statusNotesstring

âž•
assignedUserstring

âž•
estimatedOnstring

âž•
scheduledStartstring

âž•
scheduledStartSortstring

âž•
scheduledEndstring

âž•
workCompletedOnstring

âž•
completedOnstring

âž•
lastBilledOnstring

âž•
cancelledOnstring

âž•
followUpOnstring

âž•
amountstring

âž•
invoicestring

âž•
tenantTotalChargeAmountstring

âž•
tenantChargeIdsstring[]

âž•
vendorBillIdstring

âž•
vendorBillAmountstring

âž•
vendorChargeIdstring

âž•
vendorChargeAmountstring

âž•
markupAmountstring

âž•
markupBillIdstring

âž•
discountAmountstring

âž•
discountBillIdstring

âž•
corporateChargeAmountstring

âž•
corporateChargeIdstring

âž•
estimate.amountstring

âž•
estimate.approvalStatusstring

âž•
estimate.approvedOnstring

âž•
estimate.requestedOnstring

âž•
estimate.approvalLastRequestedOnstring

âž•
serviceRequest.appfolioIdstring

âž•
serviceRequest.numberstring

âž•
serviceRequest.descriptionstring

âž•
property.fullstring

âž•
property.citystring

âž•
property.statestring

âž•
property.streetstring

âž•
property.street2string

âž•
property.zipstring

âž•
unit.addressstring

âž•
unit.citystring

âž•
unit.statestring

âž•
unit.streetstring

âž•
unit.street2string

âž•
unit.zipstring

The WorkOrder Object
{
"appfolioId": "123",
"workOrderNumber": "12345-1",
"workOrderType": "Internal",
"workOrderIssue": null,
"recurring": "No",
"submittedByTenant": "Yes",
"requestingTenant": "Duffy, Brian",
"occupancyId": "320",
"unitTurnId": null,
"unitTurnCategory": null,
"surveyId": null,
"vendorId": null,
"vendor": null,
"primaryTenant": "Duffy, Brian",
"primaryTenantEmail": "duffy@dummy.com",
"primaryTenantPhoneNumber": "Phone: (111)111-1111",
"priority": "Normal",
"status": "Ready to Bill",
"statusNotes": null,
"jobDescription": "Toilet is clogged!",
"instructions": null,
"createdAt": "01/01/2024",
"createdBy": "Tenant",
"assignedUser": null,
"estimatedOn": null,
"scheduledStart": null,
"scheduledStartSort": null,
"scheduledEnd": null,
"workCompletedOn": null,
"completedOn": null,
"lastBilledOn": null,
"cancelledOn": null,
"followUpOn": null,
"amount": "0.00",
"invoice": null,
"tenantTotalChargeAmount": null,
"tenantChargeIds": null,
"vendorBillId": null,
"vendorBillAmount": null,
"vendorChargeId": null,
"vendorChargeAmount": null,
"markupAmount": null,
"markupBillId": null,
"discountAmount": null,
"discountBillId": null,
"corporateChargeAmount": null,
"corporateChargeId": null,
"estimate": {
"amount": null,
"approvalStatus": null,
"approvedOn": null,
"requestedOn": null,
"approvalLastRequestedOn": null
},
"serviceRequest": {
"appfolioId": "20012",
"number": "26952",
"description": "Toilet is clogged!"
},
"property": {
"appfolioId": "7",
"full": "1234 Warm Weather Rd., CA 90001",
"name": "Warm Weather Apartments",
"street": "1234 Warm Weather Rd.",
"street2": "",
"city": "Los Angeles",
"state": "CA",
"zip": "90001"
},
"unit": {
"appfolioId": "210",
"address": "1234 Warm Weather Rd., CA 90001",
"title": "101",
"street": "1234 Warm Weather Rd.",
"street2": "101",
"city": "Los Angeles",
"state": "CA",
"zip": "90001"
}
}

Get All Work Orders#

GET /v1/work-orders

Follows: Authentication • Caching • Polling • List Response Format • Scheduled Job

The work order endpoint returns a list of all work orders in your AppFolio® account. This endpoint should respond immediately with your most recently cached data.

Parameters#


propertyIdselect
AppFolio ID of a Property to serve as a filter.

propertyGroupIdselect
AppFolio ID of a Property Group to serve as a filter.

ownerIdselect
AppFolio ID of an Owner to serve as a filter.

status_dateselect
Filter work orders by date of a specific status.
Default Value:  
All
Possible Values:  
All
Created On
Estimate Requested On
Estimated On
Scheduled Start
Work Done On
Completed On

dateRangeselect
Status Date Range Range for report.
Default Value:  
this_month_to_date
Possible Values:  
today
this_week
this_week_to_date
this_month
this_month_to_date
this_quarter
this_quarter_to_date
this_year_to_date
last_year
last_year_to_date
yesterday
last_week
last_week_to_date
last_month
last_month_to_date
last_quarter
last_quarter_to_date
last_7_days
last_30_days
last_60_days
last_90_days
trailing_12_months
next_7_days
next_30_days
next_60_days
next_90_days
next_week
next_month
next_quarter
until_1_week_ago
until_1_month_ago
all_time

dateFromdate
Status Date Range to given in MM/DD/YYYY (e.g. 01/31/2021)

dateTodate
Status Date Range to given in MM/DD/YYYY (e.g. 01/31/2021)

priorityselect
Filter work orders for a specific priority.
Default Value:  
All
Possible Values:  
Normal
Urgent
Low
All

typeselect
Filter work orders for a specific type.
Default Value:  
All
Possible Values:  
All
Internal
Resident
Unit Turn

statusselect
Filter work orders for a specific status.
Default Value:  
All
Possible Values:  
All
New
Estimate Requested
Estimated
Assigned
Scheduled
Waiting
Work Done
Ready To Bill
Completed
Canceled
Completed No Need To Bill

 

Returns#


The standard List Response Format with a data property containing an array of WorkOrder objects.

GET /v1/work-orders
curl -X GET 'https://api.skywalkapi.com/v1/work-orders' \
-H "X-API-Key: PUT_YOUR_API_KEY_HERE"
Response
{
"meta": {
"status": "ok",
"path": "/v1/work-orders",
"query": {},
"count": 1,
"lastUpdated": 1610992228
},
"links": {
"next": "/v1/work-orders?cursor=abcdefg"
},
"data": [
{
"appfolioId": "123",
"workOrderNumber": "12345-1",
"workOrderType": "Internal",
"workOrderIssue": null,
"recurring": "No",
"submittedByTenant": "Yes",
"requestingTenant": "Duffy, Brian",
"occupancyId": "320",
"unitTurnId": null,
"unitTurnCategory": null,
"surveyId": null,
"vendorId": null,
"vendor": null,
"primaryTenant": "Duffy, Brian",
"primaryTenantEmail": "duffy@dummy.com",
"primaryTenantPhoneNumber": "Phone: (111)111-1111",
"priority": "Normal",
"status": "Ready to Bill",
"statusNotes": null,
"jobDescription": "Toilet is clogged!",
"instructions": null,
"createdAt": "01/01/2024",
"createdBy": "Tenant",
"assignedUser": null,
"estimatedOn": null,
"scheduledStart": null,
"scheduledStartSort": null,
"scheduledEnd": null,
"workCompletedOn": null,
"completedOn": null,
"lastBilledOn": null,
"cancelledOn": null,
"followUpOn": null,
"amount": "0.00",
"invoice": null,
"tenantTotalChargeAmount": null,
"tenantChargeIds": null,
"vendorBillId": null,
"vendorBillAmount": null,
"vendorChargeId": null,
"vendorChargeAmount": null,
"markupAmount": null,
"markupBillId": null,
"discountAmount": null,
"discountBillId": null,
"corporateChargeAmount": null,
"corporateChargeId": null,
"estimate": {
"amount": null,
"approvalStatus": null,
"approvedOn": null,
"requestedOn": null,
"approvalLastRequestedOn": null
},
"serviceRequest": {
"appfolioId": "20012",
"number": "26952",
"description": "Toilet is clogged!"
},
"property": {
"appfolioId": "7",
"full": "1234 Warm Weather Rd., CA 90001",
"name": "Warm Weather Apartments",
"street": "1234 Warm Weather Rd.",
"street2": "",
"city": "Los Angeles",
"state": "CA",
"zip": "90001"
},
"unit": {
"appfolioId": "210",
"address": "1234 Warm Weather Rd., CA 90001",
"title": "101",
"street": "1234 Warm Weather Rd.",
"street2": "101",
"city": "Los Angeles",
"state": "CA",
"zip": "90001"
}
}
]
}