Gateway Payloads Falcon Play

Technical reference for what Falcon Play sends to gateway.wearefalcon.tv during asset export and rundown trigger sync.

Overview

Falcon Play communicates with the gateway in two separate flows:

  1. Asset export to https://gateway.wearefalcon.tv/assets/ as MOS XML.
  2. On-air trigger sync to https://gateway.wearefalcon.tv/triggers/{token} as JSON.
FlowProtocolPayload formatPurpose
Asset exportHTTPS POSTXML (MOS 2.8 + mosExternalMetadata)Transfer selected Video/Graphics/Functions/Inputs including metadata.
Trigger syncHTTPS POSTJSONUpdate Falcon Rundown on-air status and current story id.

Asset Export Endpoint

POSThttps://gateway.wearefalcon.tv/assets/

Request headers

HeaderValueDescription
Content-Typeapplication/xml; charset=utf-8MOS XML payload.
X-Falcon-ProjectIDConfigured Asset Package IDProject scope for gateway ingestion.
X-Falcon-AssetKindSERVER, GRAPHIC, FUNCTION, or CAMAsset category for this export batch.

MOS envelope

<mos version="2.8">
  <mosID>falcon-play</mosID>
  <ncsID>falcon-rundown</ncsID>
  <messageID>falcon-{type}-{timestamp}</messageID>
  <roProjectID>{projectId}</roProjectID>
  <mosExternalMetadata>
    <mosScope>PLAYLIST</mosScope>
    <mosSchema>http://wearefalcon.tv/schema/falconAssets.xsd</mosSchema>
    <mosPayload>
      <falconAssets type="{ASSET_TYPE}" jsonSource="{kind}.json">
        ... one or more <asset> nodes ...
      </falconAssets>
    </mosPayload>
  </mosExternalMetadata>
</mos>

Asset types mapping

Falcon Play kindGateway assetType
videoSERVER
graphicGRAPHIC
functionsFUNCTION
inputCAM

Metadata transport rules

Each exported <asset> contains:

  • Typed core fields for that asset category (for example name, fileName, path, duration, variables, actions).
  • <metadata> with flattened <field key="...">...</field> entries for extended metadata.
  • <metadataJson encoding="json">...</metadataJson> with complete JSON metadata for lossless transport.
Falcon Play merges canonical export data before sending. For example, video export combines Media Server cache data with local videos extra config metadata so metadata fields are preserved in export payloads.

Trigger Sync Endpoint

POSThttps://gateway.wearefalcon.tv/triggers/{token}

Request headers

HeaderValue
Content-Typeapplication/json

JSON payload

{
  "on_air_flag": 1,
  "on_air_story_id": "STORY-123", 
  "on_air_time": "2026-06-14T12:34:56.000Z"
}

Field behavior

FieldRequiredRule
on_air_flagYesPrimary state flag.
on_air_story_idConditionalSent only when on_air_flag = 1 and story id exists.
on_air_timeNoIncluded when timestamp is available.

Error Handling and Retries

  • Asset export and trigger sync are sent via HTTPS worker threads.
  • HTTP status and response text are returned back to Falcon Play UI/status events.
  • Asset export worker timeout default is 30 seconds (Falcon Play export job uses 45 seconds).

Operational Notes

  • Autosync export only sends when dataset hash changes, reducing duplicate uploads.
  • Manual export can target selected items; selected payloads are resolved against canonical datasets before XML generation.
  • Project ID must be configured (falconRundownAssetID) for gateway asset export.