I'm trying to figure out whether protocol integration or plugin integration will be best for a use-case. The new hypothetical plugin would be responsible for sending alarms/images/video to an external application via HTTP and then based on the response...

…would trigger events on XProtect.

Having looked at the docs, though not extremely extensively, it seems to me that actually this is the whole purpose of the protocol integration.

What concerns should I take into consideration before making the decision?

Thank you.

This forum question might be interesting for you, I found a similarity as your question -

https://developer.milestonesys.com/s/question/0D53X00006v8kJcSAI/how-to-send-camera-feed-to-external-server-when-motion-is-detected

If this does not fit perhaps try to elaborate on the use case scenario, with more knowledge on the intended functionality we might come up with more advise.