Skip to main content

Disclaimer

Webhook setup and configuration must be facilitated by FieldPulse Support.

Payload Envelope

All outbound webhook requests use this top-level JSON envelope:
{
  "trigger": "Event Name",
  "message": "ACTION ON RESOURCE [FOR FIELD_NAME]",
  "data": {},
  "company": "FieldPulse_<CompanyTitle>_<CompanyId>"
}

data Variants

Depending on trigger configuration, data is one of:
  1. Object-only payload
{
  "id": 12345,
  "...": "event-specific fields"
}

2. Change payload (field/subfield updates)
{
  "old_value": "previous value",
  "new_value": "updated value",
  "object": {
    "id": 12345,
    "...": "event-specific fields"
  }
}


Jobs

1) New Job Creation

  • Event Name: Job Created
  • Example Payload Schema:
{
  "trigger": "Job Created",
  "message": "CREATE ON JOBS",
  "data": {
    "id": 9876,
    "job_type": "service",
    "customer_id": 456,
    "status": "Scheduled",
    "status_id": 3,
    "status_workflow_id": 9,
    "in_progress_status_log": null,
    "updated_at": "2026-04-14 10:30:00"
  },
  "company": "FieldPulse_Acme Services_321"
}

2) Job Status Update

  • Event Name: Job Custom Status Update
  • Event Name: Job Workflow Custom Status Update
  • Example Payload Schema:
{
  "trigger": "Job Custom Status Update",
  "message": "UPDATE ON JOBS FOR status_id",
  "data": {
    "old_value": 3,
    "new_value": 4,
    "object": {
      "id": 9876,
      "job_type": "service",
      "customer_id": 456,
      "status": "In Progress",
      "status_id": 4,
      "status_workflow_id": 9,
      "in_progress_status_log": "{\"started_at\":\"2026-04-14 10:20:00\"}",
      "updated_at": "2026-04-14 10:31:15"
    }
  },
  "company": "FieldPulse_Acme Services_321"
}

3) Job Schedule/Date Time Edit (Reschedule)

  • Event Name: Job Start Time Update
  • Event Name: Job End Time Update
  • Example Payload Schema:
{
  "trigger": "Job Start Time Update",
  "message": "UPDATE ON JOBS FOR start",
  "data": {
    "old_value": "2026-04-15 09:00:00",
    "new_value": "2026-04-15 11:00:00",
    "object": {
      "id": 9876,
      "job_type": "service",
      "updated_at": "2026-04-14 10:35:11"
    }
  },
  "company": "FieldPulse_Acme Services_321"
}


Estimates

1) New Estimate Creation

  • Event Name: Estimate Created
  • Example Payload Schema:
{
  "trigger": "Estimate Created",
  "message": "CREATE ON ESTIMATES",
  "data": {
    "id": 1122,
    "customer_id": 456,
    "author_id": 77,
    "title": "Spring HVAC Upgrade",
    "status": "Draft",
    "status_id": 1,
    "status_workflow_id": 2,
    "total": 1845.5,
    "subtotal": 1700.0,
    "tax": 145.5,
    "discount": 0,
    "updated_at": "2026-04-14 09:12:00"
  },
  "company": "FieldPulse_Acme Services_321"
}

2) Estimate Status Update

  • Event Name: Estimate Custom Status Update
  • Event Name: Estimate Workflow Custom Status Update
  • Example Payload Schema:
{
  "trigger": "Estimate Custom Status Update",
  "message": "UPDATE ON ESTIMATES FOR status_id",
  "data": {
    "old_value": 1,
    "new_value": 2,
    "object": {
      "id": 1122,
      "customer_id": 456,
      "author_id": 77,
      "title": "Spring HVAC Upgrade",
      "status": "Sent",
      "status_id": 2,
      "status_workflow_id": 2,
      "total": 1845.5,
      "subtotal": 1700.0,
      "tax": 145.5,
      "discount": 0,
      "updated_at": "2026-04-14 09:24:18"
    }
  },
  "company": "FieldPulse_Acme Services_321"
}


Invoices

1) New Invoice Creation

  • Event Name: Invoice Created
  • Example Payload Schema:
{
  "trigger": "Invoice Created",
  "message": "CREATE ON INVOICES",
  "data": {
    "id": 3344,
    "customer_id": 456,
    "author_id": 77,
    "title": "Invoice #3344",
    "status": "Draft",
    "status_id": 1,
    "status_workflow_id": 8,
    "total": 2150.0,
    "subtotal": 2000.0,
    "tax": 150.0,
    "discount": 0,
    "updated_at": "2026-04-14 11:01:00"
  },
  "company": "FieldPulse_Acme Services_321"
}

2) Invoice Status Update

  • Event Name: Invoice Custom Status Update
  • Event Name: Invoice Workflow Custom Status Update
  • Example Payload Schema:
{
  "trigger": "Invoice Custom Status Update",
  "message": "UPDATE ON INVOICES FOR status_id",
  "data": {
    "old_value": 1,
    "new_value": 3,
    "object": {
      "id": 3344,
      "customer_id": 456,
      "author_id": 77,
      "title": "Invoice #3344",
      "status": "Paid",
      "status_id": 3,
      "status_workflow_id": 8,
      "total": 2150.0,
      "subtotal": 2000.0,
      "tax": 150.0,
      "discount": 0,
      "updated_at": "2026-04-14 11:17:43"
    }
  },
  "company": "FieldPulse_Acme Services_321"
}