The Notamify Watcher Service allows automatic retrieval of new interpretations in Notamify based on configurable filters.
The service supports listener management via webhooks, enabling applications to subscribe to NOTAM updates by airport code, category, subcategory, or specific NOTAM identifiers.
The Watcher service charges credits based on the number of NOTAM deliveries sent to registered listeners:
1 credit = 15 shipments
Each shipment increments a counter for the user.
When the counter reaches 15, the service deducts 1 credit and resets the counter.
If the user has no credits remaining, further shipments are blocked until credits are topped up.
User can have maximally up to 15 active listeners.
If you specified webhook_url the service will provide each new notam for the filter as described in Watcher API Webhook message.
List listeners
get
Returns all registered listeners for the authenticated account.
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
200
List of listeners
application/json
401
Unauthorized
application/json
403
Forbidden
application/json
500
Internal Server Error
get
/listeners
Create listener
post
Registers a webhook URL and filters. Filters use OR semantics within a field and AND semantics across fields. For example, category=['AERODROME','AIRSPACE'] means either category matches; combining with notam_icao=['EPWA'] requires both field conditions to match. Using category=['all'] matches any category. mode defaults to 'prod'. Each owner can have at most one active listener whose webhook host is trycloudflare.com or a subdomain of it.
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
namestring · max: 100Optional
Optional human-readable name for the listener (max 100 characters).
webhook_urlstring · uriOptional
Destination HTTPS/HTTP endpoint for notifications. Must be a public URL, not localhost or 192.168.x.x/0.0.x.x range. Each owner can have at most one active trycloudflare.com quick tunnel webhook listener. Required when email is omitted.
emailstring · emailOptional
Optional email recipient for Postmark delivery. Required when webhook_url is omitted.
activebooleanOptional
Whether the listener is active. Defaults to true if not provided. Set to false to temporarily disable notifications without deleting the listener.
Default: true
modestring · enumOptional
Listener delivery mode. 'prod' receives real watcher events. 'sandbox' is for manual test sends only.
Default: prodPossible values:
Responses
201
Listener created
application/json
400
Bad Request
application/json
401
Unauthorized
application/json
403
Forbidden
application/json
500
Internal Server Error
post
/listeners
Update listener
put
Updates webhook URL and/or filters using the same semantics as creation. mode can be changed between 'prod' and 'sandbox'.
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired
Listener ID
Body
namestring · max: 100Optional
Optional human-readable name for the listener (max 100 characters).
webhook_urlstring · uriOptional
Destination HTTPS/HTTP endpoint for notifications. Must be a public URL, not localhost or 192.168.x.x/0.0.x.x range. Each owner can have at most one active trycloudflare.com quick tunnel webhook listener. Required when email is omitted.
emailstring · emailOptional
Optional email recipient for Postmark delivery. Required when webhook_url is omitted.
activebooleanOptional
Whether the listener is active. Defaults to true if not provided. Set to false to temporarily disable notifications without deleting the listener.
Default: true
modestring · enumOptional
Listener delivery mode. 'prod' receives real watcher events. 'sandbox' is for manual test sends only.
Default: prodPossible values:
Responses
200
Listener updated
application/json
idstringRequired
namestring · max: 100Optional
Optional human-readable name for the listener (max 100 characters).
webhook_urlstring · uriOptional
Destination HTTPS/HTTP endpoint for notifications. Must be a public URL, not localhost or 192.168.x.x/0.0.x.x range. Each owner can have at most one active trycloudflare.com quick tunnel webhook listener.
emailstring · emailOptional
Optional email recipient for delivery.
activebooleanRequired
Whether the listener is active and will receive notifications. Inactive listeners are skipped during dispatch.
modestring · enumRequired
Listener delivery mode. 'prod' receives real watcher events. 'sandbox' is for manual test sends only.
Possible values:
created_atstring · date-timeRequired
updated_atstring · date-timeRequired
400
Bad Request
application/json
401
Unauthorized
application/json
403
Forbidden
application/json
404
Not Found
application/json
500
Internal Server Error
put
/listeners/{id}
Delete listener
delete
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.