About
CAP (Common Alerting Protocol) is the standard that governments and emergency agencies use for alerts. Play receives CAP alerts from your alert provider (for example Alertus or Raptor) through our API, and shows them on your screens automatically.
- Official alerts, like severe weather, evacuation orders, Amber alerts and civil emergencies
- You choose how the alerts look and on which screens they show
- Emergency messages can take over your normal content
CAP works on all media players that Play supports, as long as they are online. It’s especially important for schools, universities, hospitals, government buildings and stores.
Get Started
Play supports the protocol, so third-party alert systems can send and trigger alerts on your screens running Play. In short, the setup is as follows:
Set up CAP alerts
- Create a new playlist that should be activated when a CAP alert is triggered.
- Add the “CAP alert” plugin to the slide. Design the slide and select whether the description or the headline of the alert is inserted into the placeholder when the alert is triggered.
- Tag the screens on which the alert should be shown. When you click “edit” on the tag, you will see the Tag ID.
- Create a new API key on the Teams page (note down the API key).
- The tag can now be triggered through the API: https://api.playsignage.com/docs#tag/Tag/paths/
1v11tags1%7Bid_tag%7D1alert/post - Depending on your region, the base URL is either https://eu-api.playsignage.com or https://us-api.playsignage.com
Testing the alert trigger is more technical, because you need to imitate the request an alert service provider would send. The example below uses curl, which works on macOS and Linux. On Windows, you can use a program called Postman. Replace the URL (the example uses us-api), tag_id and api_key with your own values. Also update the effective, onset and expires dates in the payload, so the alert is within its active window when it is triggered.
curl -X POST "https://us-api.playsignage.com/v1/tags/<tag_id>/alert" \
-H "Content-Type: application/xml" \
-H "Authorization: <api_key>" \
-d '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<alert xmlns="urn:oasis:names:tc:emergency:cap:1.2">
<identifier>ALERTUS_3716_164_20260302_203832</identifier>
<sender>PlaySignage Test</sender>
<sent>2026-03-07T19:00:00+00:00</sent>
<status>Actual</status>
<msgType>Alert</msgType>
<source>Alertus eEAS Server</source>
<scope>Public</scope>
<addresses>ALL</addresses>
<code>IPAWSv1.0</code>
<info>
<language>en-US</language>
<category>Safety</category>
<event>Local Area Emergency</event>
<responseType>None</responseType>
<urgency>Immediate</urgency>
<severity>Severe</severity>
<certainty>Observed</certainty>
<eventCode>
<valueName>SAME</valueName>
<value>LAE</value>
</eventCode>
<effective>2026-03-07T19:00:00+00:00</effective>
<onset>2026-03-07T20:00:00+00:00</onset>
<expires>2026-03-07T20:00:00+00:00</expires>
<headline>HEADLINE This is a TEST of the Alertus Emergency Notification system. NO ACTION IS NEEDED. In a real emergency, this message will contain important alert information.</headline>
<description>DESCRIPTION This is a TEST of the Alertus Emergency Notification system. NO ACTION IS NEEDED. In a real emergency, this message will contain important alert information.</description>
<parameter>
<valueName>EAS-ORG</valueName>
<value>EAS</value>
</parameter>
<area>
<areaDesc>Not specified</areaDesc>
<geocode>
<valueName>SAME</valueName>
<value>000000</value>
</geocode>
</area>
</info>
</alert>'
To cancel an ongoing alert:
curl -X POST "https://us-api.playsignage.com/v1/tags/<tag_id>/alert" \
-H "Content-Type: application/xml" \
-H "Authorization: <api_key>" \
-d '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<alert xmlns="urn:oasis:names:tc:emergency:cap:1.2">
<identifier>ALERTUS_3716_164_20260302_203832_CANCEL</identifier>
<sender>PlaySignage Test</sender>
<sent>2026-03-07T19:00:00+00:00</sent>
<status>Actual</status>
<msgType>Cancel</msgType>
<source>Alertus eEAS Server</source>
<scope>Public</scope>
<addresses>ALL</addresses>
<code>IPAWSv1.0</code>
<info>
<language>en-US</language>
<category>Safety</category>
<event>Local Area Emergency</event>
<responseType>None</responseType>
<urgency>Immediate</urgency>
<severity>Severe</severity>
<certainty>Observed</certainty>
<eventCode>
<valueName>SAME</valueName>
<value>LAE</value>
</eventCode>
<effective>2026-03-07T19:00:00+00:00</effective>
<onset>2026-03-07T20:00:00+00:00</onset>
<expires>2026-03-07T20:00:00+00:00</expires>
<headline>This is a TEST of the Alertus Emergency Notification system. NO ACTION IS NEEDED. In a real emergency, this message will contain important alert information.</headline>
<description>This is a TEST of the Alertus Emergency Notification system. NO ACTION IS NEEDED. In a real emergency, this message will contain important alert information.</description>
<parameter>
<valueName>EAS-ORG</valueName>
<value>EAS</value>
</parameter>
<area>
<areaDesc>Not specified</areaDesc>
<geocode>
<valueName>SAME</valueName>
<value>000000</value>
</geocode>
</area>
</info>
</alert>'
FAQ
What is CAP, and how does it work with Play Digital Signage?
CAP stands for Common Alerting Protocol. It is the international standard used by governments and emergency agencies to send official alerts. Play Digital Signage automatically receives these alerts and can display them on your screens in real time.
Which alert providers do you support?
So far, we have worked with alertus.com and raptortech.com. We are open to integrations with other alert providers: contact us.





