Table of Contents

File system connector

Write each manifest received to a JSON file, on the server's disk. It is the default connector, and the simplest one to check that drops arrive.

Identifier filesystem
Address https://<server>/api/webhook/filesystem, or /api/webhook as long as DefaultConnectorId is filesystem
Secrets None

Settings

Connector:filesystem section of appsettings.json:

Key Default Effect
OutputPath C:\SESARWebHook\Output\ Output folder, created if needed.
CreateSubfolders true in appsettings.json (false if the key is absent) Stores the files in one subfolder per day, yyyy-MM-dd, in the server's local time.
FileFormat json Extension of the manifest files. The content remains JSON.

What it writes

For each drop, two files with names generated by the server:

File Content
manifest_{date}_{request}.json The complete decrypted manifest, as indented JSON
context_{date}_{request}.json The request identifier, its reception date (UTC) and the connector identifier

The names do not depend on the manifest. The connector writes neither the message body nor the attachments: it reads no SESAR file.

On success, the response gives the full path of the file written (ExternalReferenceId).

Warning

The manifest is written in plain text: subject, recipients' email addresses and phone numbers, file names and hashes, paths on the SESAR server. If you use this connector beyond a test, protect its folder: access reserved to the application's account, encrypted disk, defined retention period and purge of old files.

Test

POST /api/connectors/filesystem/test creates the output folder, writes then deletes a .write_test file in it. The test fails if the application's account cannot write to the folder.

Adapt it

To keep the manifests elsewhere or in another form, write a handler instead: you control the format, the encryption and the retention.