Skip to main content
This reference documents all webhook event types that PlaneConnection can send to your configured endpoints. Each event includes a JSON payload with the event type, timestamp, and relevant data.
Configure webhook endpoints in Settings > Webhooks. See Configure Webhooks for setup instructions.

Payload Structure

Every webhook payload follows this structure:
{
  "id": "evt_abc123",
  "type": "trip.created",
  "workspace_id": "ws_xyz789",
  "timestamp": "2026-03-24T14:30:00Z",
  "data": {
    // Event-specific data
  }
}
FieldTypeDescription
idstringUnique event identifier. Use for deduplication.
typestringEvent type in resource.action format.
workspace_idstringThe workspace where the event occurred.
timestampstringISO 8601 timestamp of when the event occurred.
dataobjectEvent-specific payload. Structure varies by event type.

Trip Events

Event TypeTrigger
trip.createdA new trip is created (manually or from a portal request).
trip.updatedTrip details are modified (route, dates, crew, etc.).
trip.confirmedTrip status changes to Confirmed.
trip.cancelledTrip is cancelled.
trip.completedTrip status changes to Completed.
trip.crew_assignedA crew member is assigned to the trip.
trip.crew_removedA crew member is removed from the trip.
trip.passenger_addedA passenger is added to the trip manifest.
trip.passenger_removedA passenger is removed from the trip manifest.

Example: trip.created

{
  "id": "evt_trip_001",
  "type": "trip.created",
  "workspace_id": "ws_skyline",
  "timestamp": "2026-03-24T14:30:00Z",
  "data": {
    "trip_id": "trip_abc123",
    "trip_type": "charter",
    "status": "draft",
    "origin": "KTEB",
    "destination": "KMIA",
    "departure_date": "2026-04-01T10:00:00Z",
    "aircraft_id": "ac_n123pc",
    "created_by": "user_dispatcher01"
  }
}

Trip Request Events

Event TypeTrigger
trip_request.createdA client submits a trip request through the portal.
trip_request.acceptedOperations team accepts the request.
trip_request.declinedOperations team declines the request.
trip_request.quotedA quote is sent to the client.
trip_request.quote_acceptedClient accepts the quote.
trip_request.quote_declinedClient declines the quote.
trip_request.cancelledClient cancels the request.

Safety Events

Event TypeTrigger
safety_report.submittedA new safety report is submitted.
safety_report.updatedA safety report is updated.
safety_report.closedA safety report is closed.
investigation.createdA new investigation is opened.
investigation.completedAn investigation is marked as complete.
cpa.createdA corrective/preventive action is created.
cpa.completedA CPA is marked as complete.
cpa.overdueA CPA has passed its due date.
hazard.identifiedA new hazard is added to the hazard register.
hazard.mitigatedA hazard is marked as mitigated.

Crew Events

Event TypeTrigger
crew.currency_expiringA crew member’s currency will expire within 30 days.
crew.currency_expiredA crew member’s currency has expired.
crew.duty_limit_warningA crew member is approaching duty time limits.
crew.training_dueA crew member has training coming due.

Aircraft Events

Event TypeTrigger
aircraft.status_changedAircraft status changes (available, maintenance, etc.).
aircraft.inspection_dueAn inspection is coming due within the configured threshold.
aircraft.discrepancy_reportedA new discrepancy is reported.
aircraft.mel_deferral_expiringAn MEL deferral is approaching its expiration.

Invoice Events

Event TypeTrigger
invoice.createdA new invoice is created.
invoice.sentAn invoice is sent to the client.
invoice.paidPayment is recorded for an invoice.
invoice.overdueAn invoice has passed its due date without payment.

Member Events

Event TypeTrigger
member.invitedA new member invitation is sent.
member.joinedA member accepts their invitation and joins.
member.role_changedA member’s role is changed.
member.removedA member is removed from the workspace.

Portal Events

Event TypeTrigger
portal.client_invitedA portal invitation is sent to a client.
portal.client_joinedA client accepts their portal invitation.
portal.client_suspendedA client’s portal access is suspended.
portal.message_sentA client sends a message through the portal.

Delivery Headers

Each webhook delivery includes these HTTP headers:
HeaderDescription
Content-TypeAlways application/json.
X-PlaneConnection-SignatureHMAC-SHA256 signature for payload verification.
X-PlaneConnection-EventThe event type (e.g., trip.created).
X-PlaneConnection-Delivery-IDUnique delivery ID for tracking retries.
X-PlaneConnection-TimestampDelivery timestamp (ISO 8601).

Configure Webhooks

Set up webhook endpoints.

API Webhooks

API-level webhook documentation.

API Authentication

How to verify webhook signatures.
Last modified on April 11, 2026