FieldEdge Open API
production
  • production
  • dev
DocsAPIs
DocsAPIs
production
  • production
  • dev
production
  • production
  • dev
  1. Customer
  • Lead
    • Creates a new lead with customer details, appointment preferences, and service information.
      POST
    • Fetches lead details based on the provided lead identifier.
      GET
  • Customer
    • Creates a new customer
      POST
    • Updates an existing customer
      PUT
    • Retrieve customer by phone number
      GET
    • Search customers with optional filters
      GET
    • Retrieve customers based on address details.
      GET
    • Retrieve customer details by ID
      GET
  • CustomerAttachments
    • Upload a file attachment to a customer record
      POST
    • Retrieve attachments for a customer
      GET
  • CustomerNotes
    • Create a note on a customer record
      POST
    • Retrieve all notes for a customer
      GET
    • Update an existing customer note
      PATCH
  • CustomerTags
    • Associate a tag with a customer
      POST
    • Remove a tag from a customer
      DELETE
    • Create a reusable customer tag
      POST
    • Retrieve tags
      GET
  • Item
    • Creates a new inventory item
      POST
    • Retrieve a paginated list of inventory items with optional filters
      GET
    • Bulk update inventory items
      PATCH
    • Updates an existing inventory item
      PATCH
    • Retrieve an inventory item by ID
      GET
  • ItemCategory
    • Retrieve list of item categories
      GET
    • Create a new item category
      POST
    • Retrieve item category by id.
      GET
    • Partially update an item category
      PATCH
  • SalesTaxCode
    • Retrieve list of sales tax codes
  • WorkOrder
    • Retrieve a paginated list of work orders
    • Retrieve a work order by ID
    • Retrieve work orders at a given address, most recent first
    • Create a new work order
    • Update an existing work order
    • Retrieve list of business units
    • Retrieve business unit by id.
    • Retrieve list of lead sources
    • Retrieve lead source by id.
  • Assignments
    • Retrieve all technician assignments for a work order
    • Assign a technician to a work order
    • Update a technician assignment's status
    • Remove a technician from a work order assignment
  • Agreement
    • Retrieve list of agreements
    • Retrieve agreement by id.
  • Invoice
    • Retrieve a paginated list of invoices
    • Retrieve an invoice by ID
    • Create or update the invoice on a work order
  • Quote
    • Retrieve a paginated list of quotes
    • Retrieve a quote by ID
  • Task
    • Retrieve a task bundle by ID
    • Retrieve a list of tasks
  • Warehouse
    • Create a new warehouse
    • Retrieve a paginated list of warehouses
    • Update an existing warehouse
    • Retrieve a warehouse by ID
  • Employee
    • Retrieve a paginated list of employees
    • Retrieve an employee by ID
  • Company
    • Retrieve company name by ID
  • Webhook
    • Register a webhook endpoint to receive event notifications.
    • Delete the registered webhook for the authenticated account.
    • Rotate the HMAC signing secret for the registered webhook.
  1. Customer

Search customers with optional filters

GET
/v1/customers/search
Retrieves customers matching the provided search criteria. All filters are optional — supply any combination of phone, email, firstName, updatedAfter/updatedBefore, or hasServiceAgreement to narrow results. When no filters are provided, all customers are returned. Supports pagination via query parameters offset (default 0) and limit (default 20).
Required scope: customers:read

Request

Authorization
Query Params

Responses

🟢200
application/json
Customers retrieved successfully
Bodyapplication/json

🟠400
🟠401
🟠403
🔴500
Request Request Example
Shell
JavaScript
Java
Swift
curl --location 'https://api.fieldedge.com/open-api/v1/customers/search?phone=&email=&firstName=&offset=&limit=&sort=&updatedAfter=&updatedBefore=&hasServiceAgreement='
Response Response Example
200 - Example customer search response with pagination
{
    "total": 1,
    "limit": 20,
    "offset": 0,
    "customers": [
        {
            "id": "c9a1f6c2-8c2b-4c91-9f7b-2e5b8b0d3a01",
            "firstName": "John",
            "lastName": "Doe",
            "companyName": "Acme Heating Services",
            "displayName": "John Doe - Acme Heating Services",
            "address1": "123 Main St",
            "address2": "Suite 200",
            "city": "Dallas",
            "state": "TX",
            "zip": "75201",
            "billingAddress1": "123 Main St",
            "billingAddress2": "Suite 200",
            "billingCity": "Dallas",
            "billingState": "TX",
            "billingZip": "75201",
            "primaryPhone": "+1-214-555-0198",
            "primaryEmail": "john.doe@acmeheating.com",
            "contactOnPhone": true,
            "contactOnSms": true,
            "contactOnEmail": true,
            "active": true,
            "billFromOffice": false,
            "parentCustomerId": "a7b2d1e3-5f89-4b1d-9a6e-2c9b8f2a0b44",
            "isJob": false,
            "updatedAt": "2024-06-15T10:30:00Z",
            "hasServiceAgreement": true
        }
    ]
}
Modified at 2026-09-25 05:39:01
Previous
Retrieve customer by phone number
Next
Retrieve customers based on address details.
Built with