fieldedge_list_work_orders
List work orders
List work orders (jobs) of the company with status, service address, customer, primary technician and linked invoice. Filters combine with AND; assigned=false cannot be combined with primary_tech_id. Needs scope workorders:read. GET /open-api/v1/work-orders.
Parameterssortlimitoffsetassignedcompletedcustomer_idinvoice_addedprimary_tech_id
fieldedge_get_work_order
Get a work order
One work order: status, assignments, service address, task, tags and linked invoice. Needs scope workorders:read. GET /open-api/v1/work-orders/{work_order_id}.
Parameterswork_order_idrequired
fieldedge_search_work_orders_by_address
Find work orders at an address
Work orders at a service address, most recent first, each with its customer's name. All of address_line_1, city, state and postal_code are required. Needs scope workorders:read. GET /open-api/v1/work-orders/search/by-address.
Parameterscityrequiredlimitstaterequiredoffsetpostal_coderequiredaddress_line_1requiredaddress_line_2
fieldedge_list_work_order_assignments
List a work order's technician assignments
Technician assignments (schedule, status) on one work order. Needs scope workorders:read. GET /open-api/v1/work-orders/{workOrderId}/assignments.
Parameterssortlimitoffsetstatusschedule_toschedule_fromtechnician_idwork_order_idrequired
fieldedge_search_customers
Search customers
Search customers (personal data). With no filter all customers are listed. Needs scope customers:read. GET /open-api/v1/customers/search.
Parameterssortemaillimitphoneoffsetfirst_nameupdated_afterupdated_beforehas_service_agreement
fieldedge_get_customer
Get a customer
One customer (or job location) by id, with contact details and address (personal data). The reply says whether the record is a job or a billing customer. Needs scope customers:read. GET /open-api/v1/customers/id/{customer_id}.
Parameterscustomer_idrequired
fieldedge_get_customer_by_phone
Find a customer by phone number
The customer with this phone number (personal data). Needs scope customers:read. GET /open-api/v1/customer/{phone}.
Parametersphonerequired
fieldedge_search_customers_by_address
Find customers at an address
Customers at a street address (personal data). address_line_1, city, state and postal_code are required. Needs scope customers:read. GET /open-api/v1/customers/by-address.
Parameterscityrequiredsortlimitstaterequiredoffsetpostal_coderequiredaddress_line_1requiredaddress_line_2
fieldedge_list_customer_notes
List a customer's notes
Notes on a customer record, newest first by default. Needs scope customers:read. GET /open-api/v1/customers/{customerId}/notes.
Parameterssortlimitoffsetcustomer_idrequired
fieldedge_list_customer_attachments
List a customer's file attachments
File attachments on a customer record, each with the blob URL to view or download it. Needs scope customers:read. GET /open-api/v1/customers/{customerId}/attachments.
Parameterssortlimitoffsetcustomer_idrequired
fieldedge_list_tags
List customer tags
Reusable customer tags of the account. Needs scope customers:read. GET /open-api/v1/tags.
Parametersnamesortlimitoffset
fieldedge_list_invoices
List invoices
Invoices by invoice date, without line items (use fieldedge_get_invoice for those). Needs scope invoices:read. GET /open-api/v1/invoices.
Parameterssortlimitoffset
fieldedge_get_invoice
Get an invoice
One invoice with its line items; the invoice id equals its work order id. Needs scope invoices:read. GET /open-api/v1/invoices/{invoice_id}.
Parametersinvoice_idrequired
fieldedge_list_quotes
List quotes
Quotes, without line items (use fieldedge_get_quote for those). Prefer class_id over class_name. Needs scope workorders:read. GET /open-api/v1/quotes.
Parametersidlimitoffsetclass_idclass_namecustomer_id
fieldedge_get_quote
Get a quote
One quote with its line items; the quote id equals its work order id. Needs scope workorders:read. GET /open-api/v1/quotes/{quote_id}.
Parametersquote_idrequired
fieldedge_list_agreements
List service agreements
Service agreements (recurring maintenance contracts) with plan, dates and customer. Needs scope workorders:read. GET /open-api/v1/agreements.
Parameterssortlimitactiveoffsetplan_namecustomer_idagreement_numbernext_service_afternext_invoice_beforenext_service_before
fieldedge_get_agreement
Get a service agreement
One service agreement by id. Needs scope workorders:read. GET /open-api/v1/agreements/{agreement_id}.
Parametersagreement_idrequired
fieldedge_list_employees
List employees
Employees (technicians, dispatchers, CSRs, admins). Needs scope employees:read. GET /open-api/v1/employees.
Parametersrolesortlimitactiveoffset
fieldedge_get_employee
Get an employee
One employee record. Needs scope employees:read. GET /open-api/v1/employees/{employee_id}.
Parametersemployee_idrequired
fieldedge_list_business_units
List business units
Business units (needed to create a work order). Needs scope business-units:read. GET /open-api/v1/business-units.
Parametersnamesortlimitactiveoffset
fieldedge_get_business_unit
Get a business unit
One business unit by id. Needs scope business-units:read. GET /open-api/v1/business-units/{business_unit_id}.
Parametersbusiness_unit_idrequired
fieldedge_list_lead_sources
List lead sources
Lead sources (needed to create a work order). Needs scope lead-sources:read. GET /open-api/v1/lead-sources.
Parametersnamesortlimitactiveoffsetbusiness_unit_id
fieldedge_get_lead_source
Get a lead source
One lead source by id. Needs scope lead-sources:read. GET /open-api/v1/lead-sources/{lead_source_id}.
Parameterslead_source_idrequired
fieldedge_list_tasks
List tasks (service types)
Tasks (service types, needed to create a work order). Needs scope tasks:read. GET /open-api/v1/tasks.
Parameterssortclasslimitactiveoffset
fieldedge_get_task_bundle
Get a task with department and skill
One task together with its resolved department and skill. Needs scope tasks:read. GET /open-api/v1/tasks/{task_id}/bundle.
Parameterstask_idrequired
fieldedge_list_items
List inventory items
Inventory items (parts, services) with cost and rate. Needs scope items:read. GET /open-api/v1/items.
Parameterssortlimitactiveoffsetcategoryupdated_afterupdated_before
fieldedge_get_item
Get an inventory item
One inventory item by id. Needs scope items:read. GET /open-api/v1/items/{item_id}.
Parametersitem_idrequired
fieldedge_list_item_categories
List item categories
Inventory item categories (tree: childTreeLevel, parent). Needs scope item-categories:read. GET /open-api/v1/item-categories.
Parameterslimitoffset
fieldedge_get_item_category
Get an item category
One item category by id. Needs scope item-categories:read. GET /open-api/v1/item-categories/{item_category_id}.
Parametersitem_category_idrequired
fieldedge_list_sales_tax_codes
List sales tax codes
Sales tax codes. Needs scope items:read. GET /open-api/v1/sales-tax-codes.
Parameterssortlimitactiveoffsetis_taxable
fieldedge_list_warehouses
List warehouses
Inventory warehouses. Needs scope warehouses:read. GET /open-api/v1/warehouses.
Parametersnamesortlimitactiveoffset
fieldedge_get_warehouse
Get a warehouse
One warehouse by id. Needs scope warehouses:read. GET /open-api/v1/warehouses/{warehouse_id}.
Parameterswarehouse_idrequired
fieldedge_get_lead
Get a lead
One lead by id (lead-provider integrations). Needs scope leads:read. GET /open-api/v1/leads/{lead_id}.
Parameterslead_idrequired
fieldedge_get_company
Get a company name
The company name for a company id (the tenant id). Needs scope company:read. GET /open-api/v1/companies/{company_id}.
Parameterscompany_idrequired
fieldedge_create_customer
Create a customer
WRITE: create a customer record in FieldEdge, visible to the office staff at once. Needs an e-mail or a phone number (international format, e.g. +14155552671); marketing_email_opt_in needs an e-mail and marketing_sms_opt_in a phone number. Names are 2-50 characters without digits. Check fieldedge_search_customers first so you do not create a duplicate. Needs scope customers:write. POST /open-api/v1/customers.
Parameterszipcityemailstateaddress_1address_2last_namerequiredfirst_namerequiredcompany_namephone_numbermarketing_sms_opt_inmarketing_email_opt_in+1 more
fieldedge_create_customer_note
Add a note to a customer
WRITE: add a free-text note to a customer record; office staff see it in FieldEdge at once. Needs scope customers:write. POST /open-api/v1/customers/{customerId}/notes.
Parametersnoterequiredcustomer_idrequired
fieldedge_update_customer_note
Edit a customer note
WRITE: replace the text of an existing customer note (the old text is lost). Get the note id from fieldedge_list_customer_notes. Needs scope customers:write. PATCH /open-api/v1/customers/{customerId}/notes/{noteId}.
Parametersnoterequirednote_idrequiredcustomer_idrequired
fieldedge_create_tag
Create a customer tag
WRITE: create a reusable customer tag (e.g. "VIP Customer"). Check fieldedge_list_tags first. Needs scope customers:write. POST /open-api/v1/tags.
Parametersnamerequired
fieldedge_add_customer_tag
Tag a customer
WRITE: attach an existing tag to a customer; it shows on the customer record in FieldEdge. Needs scope customers:write. POST /open-api/v1/customers/{customerId}/tags.
Parameterstag_idrequiredcustomer_idrequired
fieldedge_remove_customer_tag
Remove a tag from a customer
WRITE: detach a tag from a customer (the tag itself stays). Needs scope customers:write. DELETE /open-api/v1/customers/{customerId}/tags/{tagId}.
Parameterstag_idrequiredcustomer_idrequired
fieldedge_create_work_order
Create a work order
WRITE: create a work order for a customer location. business_unit_id, lead_source_id and task_id are required: get them from fieldedge_list_business_units, fieldedge_list_lead_sources and fieldedge_list_tasks. Scheduling, invoice lines and equipment are separate steps (fieldedge_assign_technician for scheduling). Needs scope workorders:write. POST /open-api/v1/work-orders.
Parametersnotestask_idrequiredcustomer_idrequireddocument_typelead_source_idrequiredprimary_tech_idbusiness_unit_idrequiredwork_descriptionrequire_equipmentwork_order_number
fieldedge_update_work_order
Update a work order
WRITE: partially update a work order; only the fields you pass change. Can reassign the primary technician, change description/notes, and mark it completed (with a resolution) or cancel it (cancel_note). Look at fieldedge_get_work_order first. Needs scope workorders:write. PATCH /open-api/v1/work-orders/{workOrderId}.
Parametersnotescompletedresolutioncancel_notepriority_idwork_order_idrequiredlead_source_idprimary_tech_idbusiness_unit_idwork_description
fieldedge_assign_technician
Assign a technician to a work order
WRITE: schedule a technician on a work order. The assignment appears on the Dispatch Board at once and FieldEdge returns no assignment id: list the assignments afterwards to find it. Needs scope workorders:write. POST /open-api/v1/work-orders/{workOrderId}/assignments.
Parameterstechnician_idrequiredwork_order_idrequiredschedule_date_timerequiredest_complete_date_time
fieldedge_update_assignment_status
Change a technician assignment's status
WRITE: move an assignment to pending, traveling, working, paused, completed or canceled. It triggers the same customer notifications and dispatch-board updates as a change on the dispatch board and is timestamped now. Canceling needs cancel_note; it fails once the assignment is completed, canceled or finalized. Get the assignment id from fieldedge_list_work_order_assignments. Needs scope workorders:write. PATCH /open-api/v1/work-orders/{workOrderId}/assignments/{assignmentId}/status.
Parametersstatusrequiredcancel_noteassignment_idrequiredwork_order_idrequired
fieldedge_remove_assignment
Remove a technician from a work order
WRITE: unassign one technician (by assignment id) from a work order; other technicians on it stay. Get the assignment id from fieldedge_list_work_order_assignments. Needs scope workorders:write. DELETE /open-api/v1/work-orders/{workOrderId}/assignments/{assignmentId}.
Parametersassignment_idrequiredwork_order_idrequired