Using Webhooks to track Inspections or Tasks.

Record360 can push notifications to your system triggered by events in ours. Subscribing to a webhook allows your system to take advantage of event-based architecture, which is typically much easier and cheaper than frequent poll processes to get data. You don't need to constantly check out system for updates; sit back, relax, and wait for the data to come to you!

Webhook Events

Currently, we support webhooks for:

  • Inspections: Record360 sends you an event notification for every inspection created.
  • Tasks: Record360 sends an event notification for every task completed.

All event notifications are sent via RESTful HTTPS POST requests.

Setting up a webhook

Currently, webhooks are configured by Record360 support, using the API details you provide. Eventually, you will be able to create and manage webhooks via the Dashboard!

To get started:

  1. Determine which resources you want to consume
    1. Inspections (transaction in v1)
    2. Tasks
  2. Setup or build an API endpoint to consume webhooks using the considerations below. Contact our team with any questions.
  3. Send your webhook details to Record360 for configuration.

Requirements

  • Required: Stand up an API endpoint that can receive and accept HTTPS POST requests with content-type application/json.
  • Optional: Authentication. We can add custom headers to support most authentication schemes, including:
    • Basic auth
    • Bearer tokens
    • JWTs
    • API keys
  • Optional: Adding additional custom headers, like a key or account id.

Considerations

  • Webhooks subscribe to the same backwards compatibility and versioning policies as the Integration API. You should gracefully handle different inspection results or tasks, i.e., different checklist fields, additional fields, etc, and implement any business logic and logging in your system as needed.
  • Ensure SSL certificate is valid.
  • Inspection volumes can be high. If needed, enforce a rate limit and return a correct 429 response.

V3 Documentation

Now in Beta

Over the past few months, we have been working hard to bring the new, v3 format to webhooks, including an improved format that allows you to persistently track checklist fields, even if labels change. As of 7/8/2025, this has been released to beta. For the future, we are working on self-service support to setup webhooks from the Dashboard Integration Center.

Don't worry; all v1 features will be maintained for customers and those who wish to use them for the foreseeable future.

A webhook payload includes the event object:

event:
  id:
    type: string
    description: unique identifier for an event // does this exist today?
  object:
    type: string
    description: Communicates to the integrator the object type, e.g., `event`.
  type:
  	type: string
		description: The event type describes what kind of event occurred, e.g., `inspection.created`.
  created_at:
    type: string
    format: date-time
    description: Date-time in ISO format that the event was created.
  data:
    type: object
    properties:
      object:
        type: string
        enum: [inspection,task]
				description: Communicates to the integrator the object type, e.g., `inspection`.
    # inspection or task object goes here

Examples

{
  "id": "12", // Event id
  "object": "event", // Specifies you are receiving an event object
  "type": "inspection.created",
  "created_at": "2024-10-09-19:00:00Z",
  "data": {
    "object": "inspection", // Specifies that the data for this event is an inspection.
    "id": "430",
    "type": "open",
    "unit": {
      "id": "43",
      "reference_number": "WMWRF33519TW73378"
    },
    "damage_present": false,
    "dashboard_url": "https://dashboard.record360.com/dashboard/inspections/123",
    "user": {
      "id": "120",
      "username": "[email protected]"
    },
    "location": {
      "id": "220",
      "name": "Denver Branch"
    },
    "region": {
      "id": "1",
      "name": "Mountain West"
    },
    "department": {
      "id": "1",
      "name": "Rental"
    },
    "results": [
      {
        "name": "Basic Checklist",
        "object": "checklist",
        "data": [
          {
            "id": "odom1",
            "type": "textbox",
            "label": "Mileage",
            "value": 120000
          },
          {
            "id": "fuel1",
            "type": "single_dropdown_list",
            "label": "Fuel level",
            "value": "7/8"
          },
          {
            "type": "textbox",
            "label": "Customer Name",
            "value": "John Doe"
          },
          {
            "type": "date_selector",
            "label": "Inspection Date",
            "value": "2025-01-31"
          },
          {
            "type": "checkbox",
            "label": "Attachments",
            "items": [
              {
                "id": "rake1",
                "label": "Rake Riddle",
                "value": "true"
              },
              {
                "id": "bucket1",
                "label": "Quick Attach Bucket",
                "value": "false"
              }
            ]
          },
          {
            "id": "mpi1",
            "type": "pass_fail",
            "label": "Service Walkthrough",
            "items": [
              {
                "id": "HLF1",
                "label": "Headlights",
                "value": "Pass"
              },
              {
                "id": "BLR2",
                "label": "Brake Lights",
                "value": "Fail"
              }
            ]
          }
        ]
      },
      {
        "name": "Rental Contract",
        "object": "pdf_form",
        "link": "https://app.record360.com/v3/forms/1WwmZX857Zb6ASpv",
        "data": {
          "one": "two"
        }
      },
      {
        "name": "Collision Damage Waiver",
        "object": "collision_damage_waiver",
        "accepted": false
      }
    ],
    "photos": [
        {
            "url": "https://r360-media-production.s3.amazonaws.com/transactions/46782411/snapshot_images/699164593-image-73B68881-48BF-47AD-B952-8291AF83B73F",
            "instruction_id": null
        },
        {
            "url": "https://r360-media-production.s3.amazonaws.com/transactions/46782411/snapshot_images/699164594-image-4FEB05E7-A0FB-4869-8371-F67613BC5EF0",
            "instruction_id": null
        },
        {
            "url": "https://r360-media-production.s3.amazonaws.com/transactions/46782411/snapshot_images/699164595-image-15D7ED00-C28D-433F-A46C-F03E03B8A7DF",
            "instruction_id": null
        },
        {
            "url": "https://r360-media-production.s3.amazonaws.com/transactions/46782411/snapshot_images/699164596-image-1078DFA5-3B04-4BA1-A59C-B8BB8EAAB631",
            "instruction_id": "Take photo of front of unit"
        },
        {
            "url": "https://r360-media-production.s3.amazonaws.com/transactions/46782411/snapshot_images/699164597-image-53722EFB-8563-4B89-9FF8-3E001F1CCD20",
            "instruction_id": "Take photo of driver's side of unit"
        }
    ],
    "videos": [
        {
            "url": "https://r360-media-production.s3.amazonaws.com/transactions/46782411/video_records/25717425-video-6F07F8F7-4099-4795-8C22-10DA6AA7A5ED"
        }
    ],
    "signatures": [
        {
            "url": "https://r360-media-production.s3.amazonaws.com/transactions/46782411/signatures/6401F402-0D65-49C7-A1B1-A7063F92D64D"
        }
    ],
    "created_at": "2014-04-01T19:00:00.000Z",
    "updated_at": "2024-10-08T09:41:00.000Z"
  }

{
  "id": "13", // Event id
  "object": "event", // Specifies you are receiving an event object
  "type": "task.completed",
  "created_at": "2025-10-09-19:00:00Z",
  "data": {
    "object": "task", // Specifies that the data for this event is an inspection.
    "id": 397691,
    "type": "inspection",
    "status": "completed",
    "name": "90 day PM Inspection",
    "description": null,
    "priority": false,
    "due_by": "2025-08-11T17:09:17.895Z",
    "assignee": {
      "id": 89,
      "username": "[email protected]"
    },
    "unit": {
      "id": 1234,
      "reference_number": "89N5J6"
    },
    "workflow": {
      "id": "12345abc",
      "name": "PM Inspection"
    },
    "department": {
      "id": "abc1234",
      "name": "Service"
    },
    "completed_at": "2025-10-09-19:00:00Z",
    "created_at": "2025-05-13T17:09:17.899Z",
    "updated_at": "2025-05-13T17:09:17.899Z"
  }

Legacy (V1) Documentation

📘

As of July 2025, V1 has been superceded by V3.

V1 will continue to be supported for current users. For new implementations, we strongly recommend using V3. Please see above for V3 webhook documentation.

The request body contains two key pieces of information:

  • The event type, event
    • String enum, e.g., create
  • The object pertaining to the event, e.g., transaction (inspection)

For those consuming webhooks for multiple resources, ensure your system can identify the resource object in question as well as the type of event.

Transaction (Inspection)

  • Events:
    • create — denotes that a new inspection was performed, uploaded, and created in the system.
  • Object:
    • transaction — the inspection details
{
    "event": "create",
    "transaction": {
        "id": "40849",
        "check_in": true,
        "draft": false,
        "damage": false,
        "geo_coord": [
            -122.406417,
            37.785834
        ],
        "email_sent_to": [],
        "created_at": "2024-01-16T10:00:13.716Z",
        "workflow_modules": [
            "LB1",
            "LB2",
            "F3",
            "PF1",
            "RC2",
            "M1",
            "N1",
            "E1",
            "C1"
        ],
        "archive_status": "active",
        "workflow_id": "6146",
        "group_id": "17735",
        "view_url": "https://dashboard-s.record360.com/dashboard/inspections/40849",
        "notations": {
            "Simple": {
                "Textbox Simple Their Location": "[email protected]"
            }
        },
        "asset": {
            "id": "63019",
            "external_id": "AUTO_AD_IOS_0GzoAmiJwp"
        },
        "user": {
            "id": "5695",
            "username": "[email protected]",
            "first_name": "auto",
            "last_name": "st12-b"
        },
        "location": {
            "id": "1000001264",
            "name": "Mobile auto permission location"
        },
        "photos": [],
        "videos": [],
        "signatures": [],
        "ident_docs": [],
        "forms": [
            {
                "id": "21459",
                "transaction_id": "40849",
                "form_template": {
                    "id": "706"
                },
                "created_at": "2024-01-16T10:00:13.723Z",
                "values": {
                    "Dropdown-Multi": [],
                    "CheckBox-CheckA": false,
                    "CheckBox-CheckB": false
                }
            }
        ],
        "files": []
    }
}

Task

  • Events:
    • complete — denotes that a new task was completed by the user (either manually or by completing the required inspection).
  • Object:
    • task — the task details