fw.ops
JSON Payload Documentation: Schedule Update
This documentation makes reference to the layout fw.ops-scheduleWebhook.
1. Overview
This document describes the structure of the Schedule update JSON payload. This payload provides a comprehensive update related to airport turnaround operations. It includes details about the event time, the specific stand, the aircraft, and the associated flight schedule (arrival and/or departure).
2. Root Object Structure
The root object contains the following top-level properties:
timestamp
string
The ISO 8601 timestamp indicating when the update was generated.
name
string
The name of the event generator tool. It is a free string like "TOPs update" or "Polaris update".
stand
object
An object containing details about the primary airport stand for this event.
fwot
object
An object containing aircraft-specific information.
schedule
array
An array of flight objects associated with this update.
3. Field Details
3.1. stand Object
Details about the airport stand related to this update.
name (string): The identifier for the stand (e.g., "C02").
type (string): The category or type of stand (e.g., "PLB stand").
position (object): An object containing the coordinates and orientation of the stand.
x (number): The X-coordinate.
y (number): The Y-coordinate.
z (number): The Z-coordinate (e.g., altitude).
heading (number): The orientation of the stand, likely in degrees.
3.2 fwot Object
Contains aircraft-specific information.
reg (string): The aircraft registration number (tail number), e.g., "G-ABCD".
3.3. schedule Array
An array containing one or more flight objects. Each object represents a flight leg (e.g., an arrival or a departure). Each object in the array has the following structure:
flightId (string): The unique identifier for the flight, typically the callsign (e.g., "BA123M").
flightNumber (string): The commercial flight number (e.g., "1234").
from (object): An object detailing the flight's origin. See Flight Leg Details.
to (object): An object detailing the flight's destination. See Flight Leg Details.
3.4. Flight Leg Details (from / to Objects)
The from (origin) and to (destination) objects share a similar structure to describe a flight leg's endpoint.
ETD (string): (In from object) The Estimated Time of Departure in ISO 8601 format.
ETA (string): (In to object) The Estimated Time of Arrival in ISO 8601 format.
icao (string): The 4-letter ICAO code for the airport (e.g., "EGLL").
iata (string): The 3-letter IATA code for the airport (e.g., "LHR").
stand (object): Details about the arrival or departure stand.
name (string): The stand identifier at that airport (e.g., "B01").
type (string): The type of stand at that airport (e.g., "PLB stand").
4. Full JSON Example
{
"timestamp": "2019-01-01T00:00:00Z",
"name": "TOPs update",
"stand": {
"name": "C02",
"type": "PLB stand"
},
"fwot": {
"reg": "G-ABCD"
},
"schedule": [
{
"flightId": "BA123M", // the callsign
"flightNumber": "1234",
"from": {
"ETD": "2024-08-24T15:39:00Z",
"icao": "LHR",
"iata": "LHR",
"stand": {
"name": "B01",
"type": "PLB stand"
}
},
"to": {
"ETA": "2024-08-24T22:12:00Z",
"icao": "LFBO",
"iata": "TLS",
"stand": {
"name": "101",
"type": "PLB stand"
}
}
}
]
}JSON Schema: Mandatory fields
Mandatory Fields:
At the root level, schedule and fwot are required (along with timestamp and name).
The fwot object must contain the reg field.
Each item in the schedule array must contain a from object, which in turn must contain the ETD field.
Schema Definition:
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Schedule Update",
"description": "Payload describing a TOPs update, including stand, aircraft, and schedule information.",
"type": "object",
"properties": {
"timestamp": {
"description": "The ISO 8601 timestamp when the update was generated.",
"type": "string",
"format": "date-time"
},
"name": {
"description": "The name of the event type.",
"type": "string",
"const": "TOPs update"
},
"stand": {
"description": "Details about the primary airport stand for this event.",
"type": "object",
"properties": {
"name": {
"type": "string"
},
"type": {
"type": "string"
},
"position": {
"type": "object",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"z": {
"type": "number"
},
"heading": {
"type": "number"
}
},
"required": ["x", "y", "z", "heading"]
}
},
"required": ["name", "type", "position"]
},
"fwot": {
"description": "Aircraft-specific information.",
"type": "object",
"properties": {
"reg": {
"description": "Aircraft registration number (tail number).",
"type": "string"
}
},
"required": ["reg"]
},
"schedule": {
"description": "An array of flight objects associated with this update.",
"type": "array",
"items": {
"$ref": "#/definitions/flight"
}
}
},
"required": ["timestamp", "name", "fwot", "schedule"],
"definitions": {
"flight": {
"type": "object",
"properties": {
"flightId": {
"description": "The unique identifier for the flight (callsign).",
"type": "string"
},
"flightNumber": {
"type": "string"
},
"from": {
"description": "Flight origin details.",
"$ref": "#/definitions/flightLegFrom"
},
"to": {
"description": "Flight destination details.",
"$ref": "#/definitions/flightLegTo"
}
},
"required": ["flightId", "from", "to"]
},
"flightLegFrom": {
"type": "object",
"properties": {
"ETD": {
"description": "Estimated Time of Departure (ISO 8601).",
"type": "string",
"format": "date-time"
},
"icao": {
"type": "string"
},
"iata": {
"type": "string"
},
"stand": {
"$ref": "#/definitions/legStand"
}
},
"required": ["ETD"]
},
"flightLegTo": {
"type": "object",
"properties": {
"ETA": {
"description": "Estimated Time of Arrival (ISO 8601).",
"type": "string",
"format": "date-time"
},
"icao": {
"type": "string"
},
"iata": {
"type": "string"
},
"stand": {
"$ref": "#/definitions/legStand"
}
}
},
"legStand": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"type": {
"type": "string"
}
}
}
}
}Last updated
Was this helpful?