{% extends "layouts/workspace_settings.html" %} {% comment %} Outbound webhooks, in the shape contacts/tag_list.html established. The add form is a modal that opens itself on an error (`open=error`), because the view re-renders this page with the message rather than redirecting, and a dialog that stayed shut would hide the form that produced it. The message renders inside it. No "…" on a row: disabling, rotating and deleting an endpoint all live on its own page, and a second copy of them here is the seven-buttons-per-row problem coming back. Open is the one action, and it is where the rest are. {% endcomment %} {% load common_extras %} {% block title %}Webhooks · DemandTrail Messaging{% endblock %} {% block content_wrap %}{% endblock %} {% block content %}
{% modal "add-endpoint" title="Add an endpoint" open=error size="lg" %}
{% csrf_token %}
{% if error %}
{{ error }}
{% endif %}
Events
{% for choice in event_choices %} {% endfor %}
{% endmodal %}

Endpoints

{% if webhooks %}
{% for webhook in webhooks %}
{% include "partials/_nav_icon.html" with name="key" icon_size=19 %}
{{ webhook.url }} {% if webhook.enabled %}Enabled{% else %}Disabled{% endif %}
{{ webhook.events|join:", " }} · last delivery {{ webhook.last_delivery_at|default:"never" }}{% if not webhook.enabled and webhook.disabled_at %} · disabled after repeated failures{% endif %}
Open
{% endfor %}
{% else %}

No endpoints yet

An endpoint is how something outside DemandTrail Messaging hears about a new message, a finished flow or a tagged contact, as it happens.

{% endif %}
{% endblock %}