Make a reusable ‘content’ template

This is for static content pages and makes sure they always have the
right column widths and sub navigation.
This commit is contained in:
Chris Hill-Scott
2019-06-04 11:20:33 +01:00
parent 77469e0710
commit 399eff7215
13 changed files with 577 additions and 669 deletions

View File

@@ -0,0 +1,21 @@
{% extends "withoutnav_template.html" %}
{% from "components/sub-navigation.html" import sub_navigation %}
{% from "components/page-header.html" import page_header %}
{% block per_page_title %}
{{ content_page_title }}
{% endblock %}
{% block maincolumn_content %}
<div class="grid-row">
{% if navigation_links %}
<div class="column-one-third">
{{ sub_navigation(navigation_links) }}
</div>
{% endif %}
<div class="column-two-thirds">
{% block content_column_content %}
{% endblock %}
</div>
</div>
{% endblock %}

View File

@@ -1,16 +1,13 @@
{% extends "withoutnav_template.html" %}
{% extends "content_template.html" %}
{% block per_page_title %}
Documentation
{% endblock %}
{% block maincolumn_content %}
<div class="grid-row">
<div class="column-two-thirds">
{% block content_column_content %}
<h1 class="heading-large">Documentation</h1>
<p>Use the GOV.UK Notify API to send messages automatically.</p>
<p>Use the GOV.UK Notify API to send messages automatically.</p>
<h2 class="heading-medium">Clients</h2>
<p>Choose a client to integrate our API with your web application or back-office system. Links to documentation open in a new tab.</p>
<ul class="list list-bullet">
@@ -25,7 +22,5 @@
<li><a href="https://docs.notifications.service.gov.uk/{{ key }}.html" target="_blank" rel="noopener">{{ label }}</a></li>
{% endfor %}
</ul>
</div>
</div>
{% endblock %}

View File

@@ -1,4 +1,4 @@
{% extends "withoutnav_template.html" %}
{% extends "content_template.html" %}
{% from "components/table.html" import mapping_table, row, text_field, edit_field, field with context %}
{% from "components/sub-navigation.html" import sub_navigation %}
@@ -6,81 +6,72 @@
Features
{% endblock %}
{% block maincolumn_content %}
{% block content_column_content %}
<div class="grid-row">
<div class="column-one-third">
{{ sub_navigation(navigation_links) }}
</div>
<div class="column-two-thirds">
<h1 class="heading-large">Features</h1>
<p>If you work for central government, a local authority or the NHS, you can use GOV.UK Notify to keep your users updated.</p>
<p>Notify makes it easy to create, customise and send:</p>
<ul class="list list-bullet">
<li><a href="{{ url_for('main.features_email') }}">emails</a></li>
<li><a href="{{ url_for('main.features_sms') }}">text messages</a></li>
<li><a href="{{ url_for('main.features_letters') }}">letters</a></li>
</ul>
<p>You do not need any technical knowledge to use Notify.</p>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> for free and try it yourself.</p>
{% endif %}
<h1 class="heading-large">Features</h1>
<p>If you work for central government, a local authority or the NHS, you can use GOV.UK Notify to keep your users updated.</p>
<p>Notify makes it easy to create, customise and send:</p>
<ul class="list list-bullet">
<li><a href="{{ url_for('main.features_email') }}">emails</a></li>
<li><a href="{{ url_for('main.features_sms') }}">text messages</a></li>
<li><a href="{{ url_for('main.features_letters') }}">letters</a></li>
</ul>
<p>You do not need any technical knowledge to use Notify.</p>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> for free and try it yourself.</p>
{% endif %}
<h2 class="heading-medium">Reusable message templates</h2>
<p>To send an email, text or letter with Notify, you need to create a reusable message template first.</p>
<p>Templates let you send the same thing to lots of people, as often as you need to, without writing a new message each time.</p>
<h2 class="heading-medium">Reusable message templates</h2>
<p>To send an email, text or letter with Notify, you need to create a reusable message template first.</p>
<p>Templates let you send the same thing to lots of people, as often as you need to, without writing a new message each time.</p>
<h2 class="heading-medium">Personalised content</h2>
<p>Notify makes it easy to send personalised messages from a single template.</p>
<p>If you want to include personalised content in your message, you can add a placeholder. Placeholders are filled in with details, like a name or reference number, each time you send a message. You can do this manually or upload a list of personal details and let Notify do it for you.</p>
<h2 class="heading-medium">Personalised content</h2>
<p>Notify makes it easy to send personalised messages from a single template.</p>
<p>If you want to include personalised content in your message, you can add a placeholder. Placeholders are filled in with details, like a name or reference number, each time you send a message. You can do this manually or upload a list of personal details and let Notify do it for you.</p>
<h2 class="heading-medium">Bulk sending</h2>
<p>To send a batch of messages at once, upload a list of contact details to Notify. If you're sending emails and text messages, you can also schedule the date and time you want them to be sent.</p>
<h2 class="heading-medium">Bulk sending</h2>
<p>To send a batch of messages at once, upload a list of contact details to Notify. If you're sending emails and text messages, you can also schedule the date and time you want them to be sent.</p>
<h2 class="heading-medium">API integration</h2>
<p>You can integrate the Notify API with your web application or back-office system to send messages automatically.</p>
<p>Read our <a href="{{ url_for('.documentation') }}">API documentation</a> for more information.</p>
<h2 class="heading-medium">API integration</h2>
<p>You can integrate the Notify API with your web application or back-office system to send messages automatically.</p>
<p>Read our <a href="{{ url_for('.documentation') }}">API documentation</a> for more information.</p>
<h2 class="heading-medium">Reporting</h2>
<p>Notifys real-time dashboard lets you see the number of messages sent. You can also check the current status of any message to see when it was delivered.</p>
<p>Read more about how <a href="{{ url_for('main.message_status') }}">message status</a> works.</p>
<h2 class="heading-medium">Reporting</h2>
<p>Notifys real-time dashboard lets you see the number of messages sent. You can also check the current status of any message to see when it was delivered.</p>
<p>Read more about how <a href="{{ url_for('main.message_status') }}">message status</a> works.</p>
<h2 class="heading-medium">Permissions</h2>
<p>Control which members of your team can see, create, edit and send messages.</p>
<p>Notify lets you:</p>
<ul class="list list-bullet">
<li>set different permission levels for each team member</li>
<li>invite team members who dont have a government email address</li>
<li>choose who else can manage team members</li>
</ul>
<h2 class="heading-medium">Permissions</h2>
<p>Control which members of your team can see, create, edit and send messages.</p>
<p>Notify lets you:</p>
<ul class="list list-bullet">
<li>set different permission levels for each team member</li>
<li>invite team members who dont have a government email address</li>
<li>choose who else can manage team members</li>
</ul>
<h2 class="heading-medium">Performance</h2>
<p>Notify commits to:</p>
<ul class="list list-bullet">
<li>sending 95% of emails and text messages within 10 seconds</li>
<li>printing and posting letters by 3pm the next working day (if you send them to us before 5:30pm)</li>
</ul>
<h2 class="heading-medium">Performance</h2>
<p>Notify commits to:</p>
<ul class="list list-bullet">
<li>sending 95% of emails and text messages within 10 seconds</li>
<li>printing and posting letters by 3pm the next working day (if you send them to us before 5:30pm)</li>
</ul>
<p>We send messages through several different providers. If one provider fails, Notify switches to another so that your messages are not affected.</p>
<p>We send messages through several different providers. If one provider fails, Notify switches to another so that your messages are not affected.</p>
<p>Visit GOV.UK Performance to <a href="https://www.gov.uk/performance/govuk-notify">see how Notify is performing</a>.</p>
<p>Visit GOV.UK Performance to <a href="https://www.gov.uk/performance/govuk-notify">see how Notify is performing</a>.</p>
<h2 class="heading-medium">Security</h2>
<p>Notify protects and manages data to meet the needs of government services.</p>
<h2 class="heading-medium">Security</h2>
<p>Notify protects and manages data to meet the needs of government services.</p>
<h3 class="heading-small">Hide sensitive information</h3>
<p>Notify lets you redact personal information from your messages after theyve been sent. This means that only the recipient can see that information.</p>
<h3 class="heading-small">Hide sensitive information</h3>
<p>Notify lets you redact personal information from your messages after theyve been sent. This means that only the recipient can see that information.</p>
<h3 class="heading-small">Two-factor authentication</h3>
<p>Notify uses two-factor authentication (2FA) to keep your account secure. When you sign in, we'll send a unique one-time code to your phone and ask you to enter it before we let you use your account.</p>
<p>Read more about <a href="{{ url_for('main.security') }}">security</a>.
<h3 class="heading-small">Two-factor authentication</h3>
<p>Notify uses two-factor authentication (2FA) to keep your account secure. When you sign in, we'll send a unique one-time code to your phone and ask you to enter it before we let you use your account.</p>
<p>Read more about <a href="{{ url_for('main.security') }}">security</a>.
<h2 class="heading-medium">Support</h2>
<p>Notify provides 24-hour online support. If you have an emergency outside office hours, well reply within 30 minutes.</p>
<p>Find out more about <a href="{{ url_for('.support') }}">support</a>.</p>
</div>
</div>
<h2 class="heading-medium">Support</h2>
<p>Notify provides 24-hour online support. If you have an emergency outside office hours, well reply within 30 minutes.</p>
<p>Find out more about <a href="{{ url_for('.support') }}">support</a>.</p>
{% endblock %}

View File

@@ -1,60 +1,50 @@
{% extends "withoutnav_template.html" %}
{% extends "content_template.html" %}
{% from "components/table.html" import mapping_table, row, text_field, edit_field, field with context %}
{% from "components/sub-navigation.html" import sub_navigation %}
{% block per_page_title %}
Emails
{% endblock %}
{% block maincolumn_content %}
{% block content_column_content %}
<div class="grid-row">
<div class="column-one-third">
{{ sub_navigation(navigation_links) }}
</div>
<div class="column-two-thirds">
<h1 class="heading heading-large">Emails</h1>
<p>Send an unlimited number of emails for free with GOV.UK Notify.</p>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> and try Notify for yourself.</p>
{% endif %}
<h1 class="heading heading-large">Emails</h1>
<p>Send an unlimited number of emails for free with GOV.UK Notify.</p>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> and try Notify for yourself.</p>
{% endif %}
<h2 class="heading heading-medium">Features</h2>
<p>Notify makes it easy to:</p>
<ul class="list list-bullet">
<li>create reusable email templates</li>
<li>personalise the content of your emails</li>
<li>send and schedule bulk messages</li>
</ul>
<p>You can also <a href="{{ url_for('.documentation') }}">integrate with our API</a> to send emails automatically.</p>
<h2 class="heading heading-medium">Features</h2>
<p>Notify makes it easy to:</p>
<ul class="list list-bullet">
<li>create reusable email templates</li>
<li>personalise the content of your emails</li>
<li>send and schedule bulk messages</li>
</ul>
<p>You can also <a href="{{ url_for('.documentation') }}">integrate with our API</a> to send emails automatically.</p>
<h3 class="heading heading-small">Email branding</h3>
<p>Add your organisations logo and brand colour to email templates.</p>
<p>You can change your branding in your service settings.</p>
<h3 class="heading heading-small">Email branding</h3>
<p>Add your organisations logo and brand colour to email templates.</p>
<p>You can change your branding in your service settings.</p>
<h3 class="heading heading-small">Send files by email</h3>
<p>Notify offers a safe and reliable way to send files by email.</p>
<p>Upload a file using our API, then send your users an email with a link to download it.</p>
<p>Notify uses encrypted links instead of email attachments because:</p>
<ul class="list list-bullet">
<li>theyre more secure</li>
<!--<li>you can track when the recipient downloads your document</li>-->
<li>email attachments are often marked as spam</li>
</ul>
<p><a href="{{ url_for('.feedback', ticket_type='ask-question-give-feedback') }}">Contact the team</a> and ask us to turn this feature on for your service.</p>
<p>Read our <a href="{{ url_for('.documentation') }}">API documentation</a> for more information.</p>
<h3 class="heading heading-small">Send files by email</h3>
<p>Notify offers a safe and reliable way to send files by email.</p>
<p>Upload a file using our API, then send your users an email with a link to download it.</p>
<p>Notify uses encrypted links instead of email attachments because:</p>
<ul class="list list-bullet">
<li>theyre more secure</li>
<!--<li>you can track when the recipient downloads your document</li>-->
<li>email attachments are often marked as spam</li>
</ul>
<p><a href="{{ url_for('.feedback', ticket_type='ask-question-give-feedback') }}">Contact the team</a> and ask us to turn this feature on for your service.</p>
<p>Read our <a href="{{ url_for('.documentation') }}">API documentation</a> for more information.</p>
<h3 class="heading heading-small">Add a reply-to address</h3>
<p>Notify lets you choose the email address that users reply to.</p>
<p>Emails with a reply-to address seem more trustworthy and are less likely to be labelled as spam.</p>
<p>You can add reply-to addresses in your service settings.</p>
<h3 class="heading heading-small">Add a reply-to address</h3>
<p>Notify lets you choose the email address that users reply to.</p>
<p>Emails with a reply-to address seem more trustworthy and are less likely to be labelled as spam.</p>
<p>You can add reply-to addresses in your service settings.</p>
<h2 class="heading heading-medium">Pricing</h2>
<p>Its free to send emails through Notify.</p>
<p><a href="{{ url_for('.pricing') }}">See pricing</a> for more details.</p>
</div>
</div>
<h2 class="heading heading-medium">Pricing</h2>
<p>Its free to send emails through Notify.</p>
<p><a href="{{ url_for('.pricing') }}">See pricing</a> for more details.</p>
{% endblock %}

View File

@@ -1,56 +1,46 @@
{% extends "withoutnav_template.html" %}
{% extends "content_template.html" %}
{% from "components/table.html" import mapping_table, row, text_field, edit_field, field with context %}
{% from "components/sub-navigation.html" import sub_navigation %}
{% block per_page_title %}
Letters
{% endblock %}
{% block maincolumn_content %}
{% block content_column_content %}
<div class="grid-row">
<div class="column-one-third">
{{ sub_navigation(navigation_links) }}
</div>
<div class="column-two-thirds">
<h1 class="heading heading-large">Letters</h1>
<p>GOV.UK Notify will print, pack and post your letters for you.</p>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> and try Notify for yourself.</p>
{% endif %}
<h1 class="heading heading-large">Letters</h1>
<p>GOV.UK Notify will print, pack and post your letters for you.</p>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> and try Notify for yourself.</p>
{% endif %}
<h2 class="heading heading-medium">Features</h2>
<p>Notify makes it easy to:</p>
<ul class="list list-bullet">
<li>create reusable letter templates</li>
<li>personalise the content of your letter</li>
<li>send bulk mail</li>
</ul>
<p>You can also <a href="{{ url_for('.documentation') }}">integrate with our API</a> to send letters automatically.</p>
<h2 class="heading heading-medium">Features</h2>
<p>Notify makes it easy to:</p>
<ul class="list list-bullet">
<li>create reusable letter templates</li>
<li>personalise the content of your letter</li>
<li>send bulk mail</li>
</ul>
<p>You can also <a href="{{ url_for('.documentation') }}">integrate with our API</a> to send letters automatically.</p>
<h3 class="heading-small">Choose your postage</h3>
<p>Notify can send letters by first or second class post.</p>
<p>First class letters are delivered one day after theyre dispatched. Second class letters are delivered 2 days after theyre dispatched.</p>
<p>Letters sent before 5:30pm are dispatched the next working day (Monday to Friday). Royal Mail delivers from Monday to Saturday, excluding bank holidays.</p>
<h3 class="heading-small">Choose your postage</h3>
<p>Notify can send letters by first or second class post.</p>
<p>First class letters are delivered one day after theyre dispatched. Second class letters are delivered 2 days after theyre dispatched.</p>
<p>Letters sent before 5:30pm are dispatched the next working day (Monday to Friday). Royal Mail delivers from Monday to Saturday, excluding bank holidays.</p>
<h3 class="heading heading-small">Upload your own letters</h3>
<p>You can create reusable letter templates in Notify, or upload and send your own letters with the Notify API.</p>
<p>Use the <a href="https://docs.notifications.service.gov.uk/documentation/images/notify-pdf-letter-spec-v2.3.pdf">letter specification document</a> to help you set up your letter, save it as a PDF, then upload it to Notify.<p>
<p>Read our <a href="{{ url_for('.documentation') }}">API documentation</a> for more information.</p>
<h3 class="heading heading-small">Upload your own letters</h3>
<p>You can create reusable letter templates in Notify, or upload and send your own letters with the Notify API.</p>
<p>Use the <a href="https://docs.notifications.service.gov.uk/documentation/images/notify-pdf-letter-spec-v2.3.pdf">letter specification document</a> to help you set up your letter, save it as a PDF, then upload it to Notify.<p>
<p>Read our <a href="{{ url_for('.documentation') }}">API documentation</a> for more information.</p>
<h2 class="heading heading-medium">Pricing</h2>
<p>It costs between 30p and 76p (plus VAT) to send a letter. Prices include:</p>
<ul class="list list-bullet">
<li>paper</li>
<li>double-sided colour printing</li>
<li>C5 size envelopes with an address window</li>
<li>first or second class postage</li>
</ul>
<p>Letters can be up to 10 pages long (5 double-sided sheets of paper).</p>
<p><a href="{{ url_for('.pricing') }}">See pricing</a> for more details.</p>
</div>
</div>
<h2 class="heading heading-medium">Pricing</h2>
<p>It costs between 30p and 76p (plus VAT) to send a letter. Prices include:</p>
<ul class="list list-bullet">
<li>paper</li>
<li>double-sided colour printing</li>
<li>C5 size envelopes with an address window</li>
<li>first or second class postage</li>
</ul>
<p>Letters can be up to 10 pages long (5 double-sided sheets of paper).</p>
<p><a href="{{ url_for('.pricing') }}">See pricing</a> for more details.</p>
{% endblock %}

View File

@@ -1,52 +1,41 @@
{% extends "withoutnav_template.html" %}
{% extends "content_template.html" %}
{% from "components/table.html" import mapping_table, row, text_field, edit_field, field with context %}
{% from "components/sub-navigation.html" import sub_navigation %}
{% block per_page_title %}
Text messages
{% endblock %}
{% block maincolumn_content %}
{% block content_column_content %}
<div class="grid-row">
<div class="column-one-third">
{{ sub_navigation(navigation_links) }}
</div>
<div class="column-two-thirds">
<h1 class="heading heading-large">Text messages</h1>
<p>Send thousands of free text messages to UK and international numbers with GOV.UK Notify.</p>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> and try Notify for yourself.</p>
{% endif %}
<h1 class="heading heading-large">Text messages</h1>
<p>Send thousands of free text messages to UK and international numbers with GOV.UK Notify.</p>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> and try Notify for yourself.</p>
{% endif %}
<h2 class="heading heading-medium">Features</h2>
<p>Notify makes it easy to:</p>
<ul class="list list-bullet">
<li>create reusable text message templates</li>
<li>personalise the content of your texts</li>
<li>send and schedule bulk messages</li></ul>
<p>You can also <a href="{{ url_for('.documentation') }}">integrate with our API</a> to send text messages automatically.<p>
<h2 class="heading heading-medium">Features</h2>
<p>Notify makes it easy to:</p>
<h3 class="heading heading-small">Receive text messages</h3>
<p>Let people send messages to your service or reply to your texts.</p>
<p>You can see and reply to the messages you receive, or set up your own automated processes to manage replies.</p>
<p><a href="{{ url_for('.feedback', ticket_type='ask-question-give-feedback') }}">Contact the team</a> to request a unique number for text message replies.</p>
<h3 class="heading heading-small">Show people who your texts are from</h3>
<p>When you send a text message with Notify, the sender name tells people who it's from.</p>
<p>You can change the text message sender name from the default of 'GOVUK' in your service settings.</p>
<h2 class="heading heading-medium">Pricing<h2>
<p>Each service you set up has a free annual allowance. After that it costs 1.58 pence (plus VAT) to send a text to a UK number.</p>
<p>The free allowance is:</p>
<ul class="list list-bullet">
<li>create reusable text message templates</li>
<li>personalise the content of your texts</li>
<li>send and schedule bulk messages</li></ul>
<p>You can also <a href="{{ url_for('.documentation') }}">integrate with our API</a> to send text messages automatically.<p>
<h3 class="heading heading-small">Receive text messages</h3>
<p>Let people send messages to your service or reply to your texts.</p>
<p>You can see and reply to the messages you receive, or set up your own automated processes to manage replies.</p>
<p><a href="{{ url_for('.feedback', ticket_type='ask-question-give-feedback') }}">Contact the team</a> to request a unique number for text message replies.</p>
<h3 class="heading heading-small">Show people who your texts are from</h3>
<p>When you send a text message with Notify, the sender name tells people who it's from.</p>
<p>You can change the text message sender name from the default of 'GOVUK' in your service settings.</p>
<h2 class="heading heading-medium">Pricing<h2>
<p>Each service you set up has a free annual allowance. After that it costs 1.58 pence (plus VAT) to send a text to a UK number.</p>
<p>The free allowance is:</p>
<ul class="list list-bullet">
<li>250,000 free text messages for central government services</li>
<li>25,000 free text messages for other public sector services</li></ul>
<p><a href="{{ url_for('.pricing') }}">See pricing</a> for more details.</p>
</div>
</div>
<li>250,000 free text messages for central government services</li>
<li>25,000 free text messages for other public sector services</li></ul>
<p><a href="{{ url_for('.pricing') }}">See pricing</a> for more details.</p>
{% endblock %}

View File

@@ -1,106 +1,95 @@
{% extends "withoutnav_template.html" %}
{% from "components/sub-navigation.html" import sub_navigation %}
{% extends "content_template.html" %}
{% from "components/table.html" import mapping_table, row, text_field %}
{% block per_page_title %}
Message status
{% endblock %}
{% block maincolumn_content %}
{% block content_column_content %}
<div class="grid-row">
<div class="column-one-third">
{{ sub_navigation(navigation_links) }}
<h1 class="heading-large">Message status</h1>
<p>When you send a message using GOV.UK Notify, it moves through different states.</p>
<p>Notifys real-time dashboard lets you check the status of any message, to see when it was delivered. You can also use our API to check the status of your messages.</p>
<p>For <a href="{{ url_for("main.security") }}">security</a>, this information is only available for 7 days after a message has been sent. You can download a report, including a list of sent messages, for your own records.</p>
<img
src="{{ asset_url('images/message-sending-flow.svg') }}"
alt="A picture of the sending flow of messages in Notify, showing the three states of Sending, Delivered and Failed. Also shows the next
steps when messages fail, deleting data and trying a new channel for permanent failures, and trying again or trying a new channel for
temporary failures"
style="width: 100%;"
>
<h2 id="messagestatus" class="heading-medium">Types of message status</h2>
<p>These are the types of message status youll see when youre signed in to Notify.</p>
<p>If youre using our API, some of the statuses youll see will be different. Read our <a href="{{ url_for('.documentation') }}">documentation</a> for a detailed list of API message statuses.</p>
<h3 id="email-statuses" class="heading-small">Emails</h3>
<div class="bottom-gutter-3-2">
{% call mapping_table(
caption='Message statuses emails',
field_headings=['Status', 'Description'],
field_headings_visible=True,
caption_visible=False
) %}
{% for message_length, charge in [
('Sending', 'Notify has sent the message to the provider. The provider will try to deliver the message to the recipient. Notify is waiting for delivery information.'),
('Delivered', 'The message was successfully delivered. Notify will not tell you if a user has opened or read a message.'),
('Email address does not exist', 'The provider could not deliver the message because the email address was wrong. You should remove these email addresses from your database.'),
('Inbox not accepting messages right now', 'The provider could not deliver the message after trying for 72 hours. This can happen when the recipients inbox is full. You can try to send the message again.'),
('Technical failure', 'Your message was not sent because there was a problem between Notify and the provider. Youll have to try sending your messages again.'),
] %}
{% call row() %}
{{ text_field(message_length) }}
{{ text_field(charge) }}
{% endcall %}
{% endfor %}
{% endcall %}
</div>
<div class="column-two-thirds">
<h1 class="heading-large">Message status</h1>
<p>When you send a message using GOV.UK Notify, it moves through different states.</p>
<p>Notifys real-time dashboard lets you check the status of any message, to see when it was delivered. You can also use our API to check the status of your messages.</p>
<p>For <a href="{{ url_for("main.security") }}">security</a>, this information is only available for 7 days after a message has been sent. You can download a report, including a list of sent messages, for your own records.</p>
<img
src="{{ asset_url('images/message-sending-flow.svg') }}"
alt="A picture of the sending flow of messages in Notify, showing the three states of Sending, Delivered and Failed. Also shows the next
steps when messages fail, deleting data and trying a new channel for permanent failures, and trying again or trying a new channel for
temporary failures"
style="width: 100%;"
>
<h2 id="messagestatus" class="heading-medium">Types of message status</h2>
<p>These are the types of message status youll see when youre signed in to Notify.</p>
<p>If youre using our API, some of the statuses youll see will be different. Read our <a href="{{ url_for('.documentation') }}">documentation</a> for a detailed list of API message statuses.</p>
<h3 id="email-statuses" class="heading-small">Emails</h3>
<div class="bottom-gutter-3-2">
{% call mapping_table(
caption='Message statuses emails',
field_headings=['Status', 'Description'],
field_headings_visible=True,
caption_visible=False
) %}
{% for message_length, charge in [
('Sending', 'Notify has sent the message to the provider. The provider will try to deliver the message to the recipient. Notify is waiting for delivery information.'),
('Delivered', 'The message was successfully delivered. Notify will not tell you if a user has opened or read a message.'),
('Email address does not exist', 'The provider could not deliver the message because the email address was wrong. You should remove these email addresses from your database.'),
('Inbox not accepting messages right now', 'The provider could not deliver the message after trying for 72 hours. This can happen when the recipients inbox is full. You can try to send the message again.'),
('Technical failure', 'Your message was not sent because there was a problem between Notify and the provider. Youll have to try sending your messages again.'),
] %}
{% call row() %}
{{ text_field(message_length) }}
{{ text_field(charge) }}
{% endcall %}
{% endfor %}
{% endcall %}
</div>
<h3 id="sms-statuses" class="heading-small">Text messages</h3>
<div class="bottom-gutter-3-2">
{% call mapping_table(
caption='Message statuses text messages',
field_headings=['Status', 'Description'],
field_headings_visible=True,
caption_visible=False
) %}
{% for message_length, charge in [
('Sending', 'Notify has sent the message to the provider. The provider will try to deliver the message to the recipient. Notify is waiting for delivery information.'),
('Sent internationally', 'The message was sent to an international number. The mobile networks in some countries do not provide any more delivery information.'),
('Delivered', 'The message was successfully delivered. Notify will not tell you if a user has opened or read a message.'),
('Phone number does not exist', 'The provider could not deliver the message because the phone number was wrong. You should remove these phone numbers from your database. Youll still be charged for text messages to numbers that do not exist.'),
('Phone not accepting messages right now', 'The provider could not deliver the message after trying for 72 hours. This can happen when the recipients phone is off. You can try to send the message again. Youll still be charged for text messages to phones that are not accepting messages.'),
('Technical failure', 'Your message was not sent because there was a problem between Notify and the provider. Youll have to try sending your messages again. You will not be charged for text messages that are affected by a technical failure.'),
] %}
{% call row() %}
{{ text_field(message_length) }}
{{ text_field(charge) }}
{% endcall %}
{% endfor %}
{% endcall %}
</div>
<h3 class="heading-small">Letters</h3>
<div class="bottom-gutter-3-2">
{% call mapping_table(
caption='Message statuses letters',
field_headings=['Status', 'Description'],
field_headings_visible=True,
caption_visible=False
) %}
{% for message_length, charge in [
('Sent', 'Notify has sent the letter to the provider to be printed.'),
('Cancelled', 'Sending cancelled. Your letter will not be printed or dispatched.'),
('Technical failure', 'Notify had an unexpected error while sending the letter to our printing provider.'),
] %}
{% call row() %}
{{ text_field(message_length) }}
{{ text_field(charge) }}
{% endcall %}
{% endfor %}
{% endcall %}
</div>
<h3 id="sms-statuses" class="heading-small">Text messages</h3>
<div class="bottom-gutter-3-2">
{% call mapping_table(
caption='Message statuses text messages',
field_headings=['Status', 'Description'],
field_headings_visible=True,
caption_visible=False
) %}
{% for message_length, charge in [
('Sending', 'Notify has sent the message to the provider. The provider will try to deliver the message to the recipient. Notify is waiting for delivery information.'),
('Sent internationally', 'The message was sent to an international number. The mobile networks in some countries do not provide any more delivery information.'),
('Delivered', 'The message was successfully delivered. Notify will not tell you if a user has opened or read a message.'),
('Phone number does not exist', 'The provider could not deliver the message because the phone number was wrong. You should remove these phone numbers from your database. Youll still be charged for text messages to numbers that do not exist.'),
('Phone not accepting messages right now', 'The provider could not deliver the message after trying for 72 hours. This can happen when the recipients phone is off. You can try to send the message again. Youll still be charged for text messages to phones that are not accepting messages.'),
('Technical failure', 'Your message was not sent because there was a problem between Notify and the provider. Youll have to try sending your messages again. You will not be charged for text messages that are affected by a technical failure.'),
] %}
{% call row() %}
{{ text_field(message_length) }}
{{ text_field(charge) }}
{% endcall %}
{% endfor %}
{% endcall %}
</div>
<h3 class="heading-small">Letters</h3>
<div class="bottom-gutter-3-2">
{% call mapping_table(
caption='Message statuses letters',
field_headings=['Status', 'Description'],
field_headings_visible=True,
caption_visible=False
) %}
{% for message_length, charge in [
('Sent', 'Notify has sent the letter to the provider to be printed.'),
('Cancelled', 'Sending cancelled. Your letter will not be printed or dispatched.'),
('Technical failure', 'Notify had an unexpected error while sending the letter to our printing provider.'),
] %}
{% call row() %}
{{ text_field(message_length) }}
{{ text_field(charge) }}
{% endcall %}
{% endfor %}
{% endcall %}
</div>
</div>
{% endblock %}

View File

@@ -1,64 +1,53 @@
{% extends "content_template.html" %}
{% from "components/page-header.html" import page_header %}
{% from "components/sub-navigation.html" import sub_navigation %}
{% extends "withoutnav_template.html" %}
{% block per_page_title %}
How to pay
{% endblock %}
{% block maincolumn_content %}
{% block content_column_content %}
<div class="grid-row">
<div class="column-one-third">
{{ sub_navigation(navigation_links) }}
</div>
<div class="column-two-thirds">
{{ page_header('How to pay') }}
{{ page_header('How to pay') }}
<h2 class="heading-medium" id="invoices">
Invoices
</h2>
<h2 class="heading-medium" id="invoices">
Invoices
</h2>
<p>
Well send your organisation an invoice each quarter if:
</p>
<p>
Well send your organisation an invoice each quarter if:
</p>
<ul class="list list-bullet">
<li>you exceed the free text message allowance</li>
<li>you send letters</li>
</ul>
<ul class="list list-bullet">
<li>you exceed the free text message allowance</li>
<li>you send letters</li>
</ul>
<p>
If your organisation has more than one service that owes money the invoice will be broken down by service.
</p>
<p>
If your organisation has more than one service that owes money the invoice will be broken down by service.
</p>
<p>
If the invoice is less than £250 +VAT, well roll it into the next quarters invoice to save time and effort.
</p>
<p>
If the invoice is less than £250 +VAT, well roll it into the next quarters invoice to save time and effort.
</p>
<p>
You can pay by BACS, debit card, or credit card.
</p>
<p>
You can pay by BACS, debit card, or credit card.
</p>
<h2 class="heading-medium" id="purchase-orders">
Purchase orders
</h2>
<h2 class="heading-medium" id="purchase-orders">
Purchase orders
</h2>
<p>
If your organisations annual usage will cost over £500 +VAT you need to provide us with a purchase order so we can invoice you.
</p>
<p>
If your organisations annual usage will cost over £500 +VAT you need to provide us with a purchase order so we can invoice you.
</p>
<p>
Your organisation should raise a single purchase order to cover the estimated annual usage costs for all your Notify services. This purchase order should be updated if the estimated annual usage costs increase.
</p>
<p>
Your organisation should raise a single purchase order to cover the estimated annual usage costs for all your Notify services. This purchase order should be updated if the estimated annual usage costs increase.
</p>
<p>
You may need to set up Cabinet Office as a supplier before you can raise a purchase order. If you need any details to do that, please <a href="{{ support_link }}">get in touch with us</a>.
</p>
</div>
</div>
<p>
You may need to set up Cabinet Office as a supplier before you can raise a purchase order. If you need any details to do that, please <a href="{{ support_link }}">get in touch with us</a>.
</p>
{% endblock %}

View File

@@ -1,154 +1,145 @@
{% from "components/table.html" import mapping_table, row, text_field, field, row_heading %}
{% from "components/textbox.html" import textbox %}
{% from "components/live-search.html" import live_search %}
{% from "components/sub-navigation.html" import sub_navigation %}
{% extends "withoutnav_template.html" %}
{% extends "content_template.html" %}
{% block per_page_title %}
Pricing
{% endblock %}
{% block maincolumn_content %}
{% block content_column_content %}
<div class="grid-row">
<div class="column-one-third">
{{ sub_navigation(navigation_links) }}
</div>
<div class="column-two-thirds">
<h1 class="heading-large">Pricing</h1>
<p>To use GOV.UK Notify, theres:</p>
<ul class="list list-bullet">
<li>no monthly charge</li>
<li>no setup fee</li>
<li>no procurement cost</li>
</ul>
<h1 class="heading-large">Pricing</h1>
<p>To use GOV.UK Notify, theres:</p>
<ul class="list list-bullet">
<li>no monthly charge</li>
<li>no setup fee</li>
<li>no procurement cost</li>
</ul>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> then set up as many different services as you need to. Each service has its own free text message allowance.</p>
{% endif %}
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> then set up as many different services as you need to. Each service has its own free text message allowance.</p>
{% endif %}
<p>When you set up a new service it will start in <a href="{{ url_for('main.trial_mode_new') }}">trial mode</a>.</p>
<p>When you set up a new service it will start in <a href="{{ url_for('main.trial_mode_new') }}">trial mode</a>.</p>
<h2 class="heading-medium">Emails</h2>
<p>Its free to send emails through Notify.</p>
<h2 class="heading-medium">Emails</h2>
<p>Its free to send emails through Notify.</p>
<h2 class="heading-medium">Text messages</h2>
<p>Each service you set up in Notify has a free annual allowance. The allowance is:</p>
<ul class="list list-bullet">
<li>250,000 free text messages for central government services</li>
<li>25,000 free text messages for other public sector services</li>
</ul>
<p>It costs 1.58 pence (plus VAT) for each text message you send after your free allowance.</p>
<p>See <a href="{{ url_for('main.how_to_pay') }}">how to pay</a>.
<h2 class="heading-medium">Text messages</h2>
<p>Each service you set up in Notify has a free annual allowance. The allowance is:</p>
<ul class="list list-bullet">
<li>250,000 free text messages for central government services</li>
<li>25,000 free text messages for other public sector services</li>
</ul>
<p>It costs 1.58 pence (plus VAT) for each text message you send after your free allowance.</p>
<p>See <a href="{{ url_for('main.how_to_pay') }}">how to pay</a>.
<h3 class="heading-small">Long text messages</h3>
<p>If a text message is longer than 160 characters (including spaces), itll be charged as more than one message:</p>
<div class="bottom-gutter-3-2">
{% call mapping_table(
caption='Text message pricing',
field_headings=['Message length', 'Charge'],
field_headings_visible=True,
caption_visible=False
) %}
{% for message_length, charge in [
('Up to 160 characters', '1 text message'),
('Up to 306 characters', '2 text messages'),
('Up to 459 characters', '3 text messages'),
('Up to 612 characters', '4 text messages'),
] %}
{% call row() %}
{{ text_field(message_length) }}
{{ text_field(charge) }}
{% endcall %}
{% endfor %}
{% endcall %}
</div>
<p>Long text messages containing Welsh characters (Â, â, Ê, ê, Î, î, Ô, ô, Û, û, Ŵ, ŵ, Ŷ, and ŷ) are charged differently:</p>
<div class="bottom-gutter-3-2">
{% call mapping_table(
caption='Text message pricing',
field_headings=['Message length', 'Charge'],
field_headings_visible=True,
caption_visible=False
) %}
{% for message_length, charge in [
('Up to 70 characters', '1 text message'),
('Up to 134 characters', '2 text messages'),
('Up to 201 characters', '3 text messages'),
('Up to 268 characters', '4 text messages'),
('Each additional 67 characters', '1 additional text message'),
] %}
{% call row() %}
{{ text_field(message_length) }}
{{ text_field(charge) }}
{% endcall %}
{% endfor %}
{% endcall %}
</div>
<h3 class="heading-small">Sending text messages to international numbers</h3>
<p>It might cost more to send text messages to international numbers than UK ones, depending on the country.</p>
<details>
<summary>International text message rates</summary>
{{ live_search(target_selector='#international-pricing .table-row', show=True, form=search_form, label='Search by country name or code') }}
<div id="international-pricing" class="bottom-gutter-3-2">
{% call mapping_table(
caption='Letter pricing',
field_headings=['Country code', 'Country', 'Cost multiplier'],
field_headings_visible=True,
caption_visible=False
) %}
{% for cc, names, billable_units in international_sms_rates %}
{% call row() %}
{{ text_field('+' + cc) }}
{% call field() %}
{% for name in names %}
{{ name }}<br>
{% endfor %}
{% endcall %}
{{ text_field('{}&hairsp;&times;'.format(billable_units)|safe) }}
{% endcall %}
{% endfor %}
<h3 class="heading-small">Long text messages</h3>
<p>If a text message is longer than 160 characters (including spaces), itll be charged as more than one message:</p>
<div class="bottom-gutter-3-2">
{% call mapping_table(
caption='Text message pricing',
field_headings=['Message length', 'Charge'],
field_headings_visible=True,
caption_visible=False
) %}
{% for message_length, charge in [
('Up to 160 characters', '1 text message'),
('Up to 306 characters', '2 text messages'),
('Up to 459 characters', '3 text messages'),
('Up to 612 characters', '4 text messages'),
] %}
{% call row() %}
{{ text_field(message_length) }}
{{ text_field(charge) }}
{% endcall %}
</div>
{% endfor %}
{% endcall %}
</div>
<p>Long text messages containing Welsh characters (Â, â, Ê, ê, Î, î, Ô, ô, Û, û, Ŵ, ŵ, Ŷ, and ŷ) are charged differently:</p>
<div class="bottom-gutter-3-2">
{% call mapping_table(
caption='Text message pricing',
field_headings=['Message length', 'Charge'],
field_headings_visible=True,
caption_visible=False
) %}
{% for message_length, charge in [
('Up to 70 characters', '1 text message'),
('Up to 134 characters', '2 text messages'),
('Up to 201 characters', '3 text messages'),
('Up to 268 characters', '4 text messages'),
('Each additional 67 characters', '1 additional text message'),
] %}
{% call row() %}
{{ text_field(message_length) }}
{{ text_field(charge) }}
{% endcall %}
{% endfor %}
{% endcall %}
</div>
<h3 class="heading-small">Sending text messages to international numbers</h3>
<p>It might cost more to send text messages to international numbers than UK ones, depending on the country.</p>
<details>
<summary>International text message rates</summary>
</details>
{{ live_search(target_selector='#international-pricing .table-row', show=True, form=search_form, label='Search by country name or code') }}
<h2 class="heading-medium" id="letters">Letters</h2>
<p>The cost of sending a letter depends on the postage you choose and how many sheets of paper you need.</p>
<div class="bottom-gutter-3-2">
<div id="international-pricing" class="bottom-gutter-3-2">
{% call mapping_table(
caption='Letter pricing',
field_headings=['Paper', 'Second class', 'First class'],
field_headings=['Country code', 'Country', 'Cost multiplier'],
field_headings_visible=True,
caption_visible=False
) %}
{% for sheets, second, first in [
('1 sheet', '30', '56'),
('2 sheets', '35', '61'),
('3 sheets', '40', '66'),
('4 sheets', '45', '71'),
('5 sheets', '50', '76'),
] %}
{% for cc, names, billable_units in international_sms_rates %}
{% call row() %}
{% call row_heading() %} {{ sheets }} (double-sided) {% endcall %}
{{ text_field(second + 'p + VAT') }}
{{ text_field(first + 'p + VAT') }}
{{ text_field('+' + cc) }}
{% call field() %}
{% for name in names %}
{{ name }}<br>
{% endfor %}
{% endcall %}
{{ text_field('{}&hairsp;&times;'.format(billable_units)|safe) }}
{% endcall %}
{% endfor %}
{% endcall %}
</div>
<p>Prices include:</p>
<ul class="list list-bullet">
<li>paper</li>
<li>double-sided colour printing</li>
<li>C5 size envelopes with an address window</li>
<li>first or second class postage</li>
</ul>
</details>
<h2 class="heading-medium" id="letters">Letters</h2>
<p>The cost of sending a letter depends on the postage you choose and how many sheets of paper you need.</p>
<div class="bottom-gutter-3-2">
{% call mapping_table(
caption='Letter pricing',
field_headings=['Paper', 'Second class', 'First class'],
field_headings_visible=True,
caption_visible=False
) %}
{% for sheets, second, first in [
('1 sheet', '30', '56'),
('2 sheets', '35', '61'),
('3 sheets', '40', '66'),
('4 sheets', '45', '71'),
('5 sheets', '50', '76'),
] %}
{% call row() %}
{% call row_heading() %} {{ sheets }} (double-sided) {% endcall %}
{{ text_field(second + 'p + VAT') }}
{{ text_field(first + 'p + VAT') }}
{% endcall %}
{% endfor %}
{% endcall %}
</div>
</div>
<p>Prices include:</p>
<ul class="list list-bullet">
<li>paper</li>
<li>double-sided colour printing</li>
<li>C5 size envelopes with an address window</li>
<li>first or second class postage</li>
</ul>
{% endblock %}

View File

@@ -1,64 +1,54 @@
{% from "components/table.html" import mapping_table, row, text_field, edit_field, field with context %}
{% from "components/sub-navigation.html" import sub_navigation %}
{% extends "withoutnav_template.html" %}
{% extends "content_template.html" %}
{% block per_page_title %}
Roadmap
{% endblock %}
{% block maincolumn_content %}
{% block content_column_content %}
<div class="grid-row">
<div class="column-one-third">
{{ sub_navigation(navigation_links) }}
</div>
<div class="column-two-thirds">
<h1 class="heading-large">Roadmap</h1>
<h1 class="heading-large">Roadmap</h1>
<p>The GOV.UK Notify roadmap shows the things were working on and when we hope to have them ready for you to use.</p>
<p>Notify is in public beta. This means its fully operational and supported, but were regularly adding new features. The roadmap is a guide to what we have planned, but some things might change.</p>
<p>You can <a href="{{url_for('.feedback', ticket_type='ask-question-give-feedback')}}">contact us</a> for more detail about these features, or to suggest something else youd like Notify to offer.</p>
<p>The GOV.UK Notify roadmap shows the things were working on and when we hope to have them ready for you to use.</p>
<p>Notify is in public beta. This means its fully operational and supported, but were regularly adding new features. The roadmap is a guide to what we have planned, but some things might change.</p>
<p>You can <a href="{{url_for('.feedback', ticket_type='ask-question-give-feedback')}}">contact us</a> for more detail about these features, or to suggest something else youd like Notify to offer.</p>
<h2 class="heading-medium">January to March 2019</h2>
<h2 class="heading-medium">January to March 2019</h2>
<ul class="list list-bullet">
<li>Update your team members phone numbers and email addresses</li>
<li>Group your templates into folders</li>
<li>Specify which template folders different team members can access</li>
<li>Choose first or second postage class for letters</li>
</ul>
<ul class="list list-bullet">
<li>Update your team members phone numbers and email addresses</li>
<li>Group your templates into folders</li>
<li>Specify which template folders different team members can access</li>
<li>Choose first or second postage class for letters</li>
</ul>
<h2 class="heading-medium">April to June 2019</h2>
<h2 class="heading-medium">April to June 2019</h2>
<ul class="list list-bullet">
<li>Send the full range of Welsh characters in text messages</li>
<li>Send one-off letters (using the interface)</li>
<li>Email documents to your users (using the interface)</li>
<li>Save work in progress/draft templates</li>
<li>Send emails using NHS and Parliament addresses</li>
</ul>
<ul class="list list-bullet">
<li>Send the full range of Welsh characters in text messages</li>
<li>Send one-off letters (using the interface)</li>
<li>Email documents to your users (using the interface)</li>
<li>Save work in progress/draft templates</li>
<li>Send emails using NHS and Parliament addresses</li>
</ul>
<h2 class="heading-medium">July to September 2019</h2>
<h2 class="heading-medium">July to September 2019</h2>
<ul class="list list-bullet">
<li>Create multi-lingual letter templates</li>
<li>Receive a feed of letters that have been 'returned to sender'</li>
<li>Add two-factor authentication for documents emailed to your users</li>
</ul>
<ul class="list list-bullet">
<li>Create multi-lingual letter templates</li>
<li>Receive a feed of letters that have been 'returned to sender'</li>
<li>Add two-factor authentication for documents emailed to your users</li>
</ul>
<h2 class="heading-medium">October 2019 onwards</h2>
<h2 class="heading-medium">October 2019 onwards</h2>
<ul class="list list-bullet">
<li>Distribute the delivery of a batch of messages over a number of hours</li>
<li>Specify how long Notify will try to deliver a text message for</li>
<li>Scan incoming and outgoing messages for banned content</li>
<li>Receive usage and reporting data via the API</li>
<li>Choose different ways to pay for your Notify usage</li>
<li>Check mobile numbers are valid before sending text messages</li>
</ul>
</div>
</div>
<ul class="list list-bullet">
<li>Distribute the delivery of a batch of messages over a number of hours</li>
<li>Specify how long Notify will try to deliver a text message for</li>
<li>Scan incoming and outgoing messages for banned content</li>
<li>Receive usage and reporting data via the API</li>
<li>Choose different ways to pay for your Notify usage</li>
<li>Check mobile numbers are valid before sending text messages</li>
</ul>
{% endblock %}

View File

@@ -1,89 +1,82 @@
{% extends "withoutnav_template.html" %}
{% extends "content_template.html" %}
{% from "components/table.html" import mapping_table, row, text_field, edit_field, field with context %}
{% from "components/sub-navigation.html" import sub_navigation %}
{% block per_page_title %}
Security
{% endblock %}
{% block maincolumn_content %}
{% block content_column_content %}
<div class="grid-row">
<div class="column-one-third">
{{ sub_navigation(navigation_links) }}
</div>
<div class="column-two-thirds">
<h1 class="heading-large">Security</h1>
<p>GOV.UK Notify is built for the needs of government services. It has processes in place to:</p>
<ul class="list list-bullet">
<li>protect user data</li>
<li>keep systems secure</li>
<li>manage risks around information</li>
</ul>
<h1 class="heading-large">Security</h1>
<p>GOV.UK Notify is built for the needs of government services. It has processes in place to:</p>
<ul class="list list-bullet">
<li>protect user data</li>
<li>keep systems secure</li>
<li>manage risks around information</li>
</ul>
<h2 class="heading-medium">Data</h2>
<p>On Notify, data is encrypted:</p>
<ul class="list list-bullet">
<li>when it passes through the service</li>
<li>when its stored on the service</li>
</ul>
<p>Any user data you upload is only held for 7 days.</p>
<p>The Cabinet Office acts as data processor for Notify. Your organisation is the data controller.</p>
<h3 class="heading-small">Data Protection Act</h3>
<p>Notify complies with data protection law. To make sure it stays compliant, there are regular legal reviews of the services:</p>
<ul class="list list-bullet">
<li>privacy policy</li>
<li>terms of use</li>
<li>approach to data sharing</li>
</ul>
<h2 class="heading-medium">Data</h2>
<p>On Notify, data is encrypted:</p>
<ul class="list list-bullet">
<li>when it passes through the service</li>
<li>when its stored on the service</li>
</ul>
<p>Any user data you upload is only held for 7 days.</p>
<p>The Cabinet Office acts as data processor for Notify. Your organisation is the data controller.</p>
<h3 class="heading-small">Data Protection Act</h3>
<p>Notify complies with data protection law. To make sure it stays compliant, there are regular legal reviews of the services:</p>
<ul class="list list-bullet">
<li>privacy policy</li>
<li>terms of use</li>
<li>approach to data sharing</li>
</ul>
<h2 class="heading-medium">Technical security</h2>
<p>Other technical security controls on Notify include:</p>
<ul class="list list-bullet">
<li>protective monitoring to record activity, and raise alerts about any suspicious activity</li>
<li>using JSON Web Tokens, to avoid sending API keys when your service talks to Notify</li>
</ul>
<h2 class="heading-medium">Technical security</h2>
<p>Other technical security controls on Notify include:</p>
<ul class="list list-bullet">
<li>protective monitoring to record activity, and raise alerts about any suspicious activity</li>
<li>using JSON Web Tokens, to avoid sending API keys when your service talks to Notify</li>
</ul>
<h3 class="heading-small">Protect sensitive information</h3>
<p>Some messages include sensitive information like security codes or password reset links.</p>
<p>If youre sending a message with sensitive information, you can choose to hide those details on the Notify dashboard once the message has been sent. This means that only the message recipient will be able to see that information.</p>
<h2 class="heading-medium">User permissions and signing in</h2>
<p>You can set different user permissions in Notify. This lets you control who in your team has access to certain parts of the service.</p>
<h3 class="heading-small">Two-factor authentication</h3>
<p>To sign in to Notify, youll need to enter:</p>
<ul class="list list-bullet">
<li>your email address and password</li>
<li>a text message code that Notify sends to your phone</li>
</ul>
<p>If receiving text messages at work is a problem for your team, <a href="https://www.notifications.service.gov.uk/">contact us</a> about using an email link instead.</p>
<h3 class="heading-small">Protect sensitive information</h3>
<p>Some messages include sensitive information like security codes or password reset links.</p>
<p>If youre sending a message with sensitive information, you can choose to hide those details on the Notify dashboard once the message has been sent. This means that only the message recipient will be able to see that information.</p>
<h2 class="heading-medium">Information risk management</h2>
<p>Our approach to information risk management follows National Cyber Security Centre (NCSC) guidance. It assesses:</p>
<ul class="list list-bullet">
<li>how Notify is built</li>
<li>the infrastructure Notify is built upon</li>
<li>support for the Notify service</li>
</ul>
<p>This approach also applies to the service providers Notify uses to send messages.</p>
<h2 class="heading-medium">User permissions and signing in</h2>
<p>You can set different user permissions in Notify. This lets you control who in your team has access to certain parts of the service.</p>
<h3 class="heading-small">Two-factor authentication</h3>
<p>To sign in to Notify, youll need to enter:</p>
<ul class="list list-bullet">
<li>your email address and password</li>
<li>a text message code that Notify sends to your phone</li>
</ul>
<p>If receiving text messages at work is a problem for your team, <a href="https://www.notifications.service.gov.uk/">contact us</a> about using an email link instead.</p>
<h2 class="heading-medium">How we manage risks on Notify</h2>
<p>Things we do to manage risks on Notify include:</p>
<ul class="list list-bullet">
<li>formal risk assessments based on <a href="http://www.iso.org/iso/catalogue_detail?csnumber=56742">ISO 2700:2011</a> and National Cyber Security Centre guidance</li>
<li><a href="https://www.cesg.gov.uk/articles/check-fundamental-principles">CHECK</a>-based testing, both annually and when any major changes are made to Notify</li>
<li>residual risk statement preparation and active management of the risk treatment plan</li>
<li>regular updates to the Privacy Impact Assessment</li>
<li>security impact assessments</li>
</ul>
<h2 class="heading-medium">Information risk management</h2>
<p>Our approach to information risk management follows National Cyber Security Centre (NCSC) guidance. It assesses:</p>
<ul class="list list-bullet">
<li>how Notify is built</li>
<li>the infrastructure Notify is built upon</li>
<li>support for the Notify service</li>
</ul>
<p>This approach also applies to the service providers Notify uses to send messages.</p>
<h2 class="heading-medium">Cabinet Office approval</h2>
<p>Notify has been assessed and approved by the Cabinet Office Senior Information Risk Officer (SIRO). The SIRO checks this approval once a year.</p>
<p>Notify also has approval from the Office of the Governments SIRO to host data within the EEA.</p>
<h2 class="heading-medium">How we manage risks on Notify</h2>
<p>Things we do to manage risks on Notify include:</p>
<ul class="list list-bullet">
<li>formal risk assessments based on <a href="http://www.iso.org/iso/catalogue_detail?csnumber=56742">ISO 2700:2011</a> and National Cyber Security Centre guidance</li>
<li><a href="https://www.cesg.gov.uk/articles/check-fundamental-principles">CHECK</a>-based testing, both annually and when any major changes are made to Notify</li>
<li>residual risk statement preparation and active management of the risk treatment plan</li>
<li>regular updates to the Privacy Impact Assessment</li>
<li>security impact assessments</li>
</ul>
<h2 class="heading-medium">Classifications and security vetting</h2>
<p>Any information in Notify is classified as OFFICIAL under the Government Security Classifications Policy.</p>
<p>All system administration staff working on Notify are cleared to Security Check (SC) level by United Kingdom Security Vetting.</p>
<h2 class="heading-medium">Cabinet Office approval</h2>
<p>Notify has been assessed and approved by the Cabinet Office Senior Information Risk Officer (SIRO). The SIRO checks this approval once a year.</p>
<p>Notify also has approval from the Office of the Governments SIRO to host data within the EEA.</p>
<h2 class="heading-medium">Classifications and security vetting</h2>
<p>Any information in Notify is classified as OFFICIAL under the Government Security Classifications Policy.</p>
<p>All system administration staff working on Notify are cleared to Security Check (SC) level by United Kingdom Security Vetting.</p>
{% endblock %}

View File

@@ -1,64 +1,54 @@
{% extends "withoutnav_template.html" %}
{% extends "content_template.html" %}
{% from "components/banner.html" import banner_wrapper %}
{% from "components/sub-navigation.html" import sub_navigation %}
{% block per_page_title %}
Terms of use
Terms of use
{% endblock %}
{% block maincolumn_content %}
{% block content_column_content %}
<div class="grid-row">
<div class="column-one-third">
{{ sub_navigation(navigation_links) }}
</div>
<div class="column-two-thirds">
<h1 class="heading-large">Terms of use</h1>
<h1 class="heading-large">Terms of use</h1>
<p>
These terms apply to your services use of GOV.UK&nbsp;Notify. You must be the service manager to accept them.
</p>
<p>
These terms apply to your services use of GOV.UK&nbsp;Notify. You must be the service manager to accept them.
</p>
<p>
{{ current_user.default_organisation.as_terms_of_use_paragraph(
terms_link=url_for('main.sign_in', next=url_for('main.terms')),
download_link=url_for('.agreement'),
support_link=url_for('.feedback', ticket_type='ask-question-give-feedback', body='agreement'),
signed_in=current_user.is_authenticated
)}}
</p>
<p>
{{ current_user.default_organisation.as_terms_of_use_paragraph(
terms_link=url_for('main.sign_in', next=url_for('main.terms')),
download_link=url_for('.agreement'),
support_link=url_for('.feedback', ticket_type='ask-question-give-feedback', body='agreement'),
signed_in=current_user.is_authenticated
)}}
</p>
<h2 class="heading-medium">When using Notify</h2>
<p>You must:</p>
<ul class="list list-bullet">
<li>complete your organisations information assurance process (you dont need to include Notify or our delivery partners, weve already done that)</li>
<li>tell us immediately if you have any security breaches</li>
<li>keep your API keys secure</li>
<li>get the right levels of consent (to send messages and to use data)</li>
<li>not send unsolicited messages, only ones related to a transaction or something the user has subscribed to be updated about (<a href="https://www.gov.uk/service-manual/design/sending-emails-and-text-messages">check the Service Manual</a> if youre not sure)</li>
<li>
send messages that meet the GOV.UK Service Manual standards for <a href="https://www.gov.uk/service-manual/design/sending-emails-and-text-messages">writing text messages and emails</a></li>
<li>not send messages containing any personally or commercially sensitive information</li>
<li>check that the data you add to Notify is accurate and complies with data protection legislation</li>
</ul>
<p>If you dont keep to these terms, we might have to stop sending your messages.</p>
<h2 class="heading-medium">When using Notify</h2>
<p>You must:</p>
<ul class="list list-bullet">
<li>complete your organisations information assurance process (you dont need to include Notify or our delivery partners, weve already done that)</li>
<li>tell us immediately if you have any security breaches</li>
<li>keep your API keys secure</li>
<li>get the right levels of consent (to send messages and to use data)</li>
<li>not send unsolicited messages, only ones related to a transaction or something the user has subscribed to be updated about (<a href="https://www.gov.uk/service-manual/design/sending-emails-and-text-messages">check the Service Manual</a> if youre not sure)</li>
<li>
send messages that meet the GOV.UK Service Manual standards for <a href="https://www.gov.uk/service-manual/design/sending-emails-and-text-messages">writing text messages and emails</a></li>
<li>not send messages containing any personally or commercially sensitive information</li>
<li>check that the data you add to Notify is accurate and complies with data protection legislation</li>
</ul>
<p>If you dont keep to these terms, we might have to stop sending your messages.</p>
<p>Notify will:</p>
<ul class="list list-bullet">
<li>send all the messages you pass to us, as long as they meet our guidelines</li>
<li>
show how Notify is performing (through our <a href="https://www.gov.uk/performance/govuk-notify">performance</a> and <a href="https://status.notifications.service.gov.uk/">status</a> pages)
</li>
<li>keep your data <a href="{{ url_for('.security') }}">secure</a></li>
<li>give you one months notice by email if we change our terms of use or delivery providers</li>
</ul>
<p>Notify will:</p>
<ul class="list list-bullet">
<li>send all the messages you pass to us, as long as they meet our guidelines</li>
<li>
show how Notify is performing (through our <a href="https://www.gov.uk/performance/govuk-notify">performance</a> and <a href="https://status.notifications.service.gov.uk/">status</a> pages)
</li>
<li>keep your data <a href="{{ url_for('.security') }}">secure</a></li>
<li>give you one months notice by email if we change our terms of use or delivery providers</li>
</ul>
<h2 class="heading-medium">Leaving Notify</h2>
<p>You can leave Notify at any time. Just <a href="{{url_for('.feedback', ticket_type='ask-question-give-feedback')}}">contact us</a> and well close your account.</p>
<p>When you leave Notify, all your data will be deleted.</p>
</div>
</div>
<h2 class="heading-medium">Leaving Notify</h2>
<p>You can leave Notify at any time. Just <a href="{{url_for('.feedback', ticket_type='ask-question-give-feedback')}}">contact us</a> and well close your account.</p>
<p>When you leave Notify, all your data will be deleted.</p>
{% endblock %}

View File

@@ -1,48 +1,38 @@
{% extends "withoutnav_template.html" %}
{% from "components/sub-navigation.html" import sub_navigation %}
{% extends "content_template.html" %}
{% block per_page_title %}
Using Notify
Trial mode
{% endblock %}
{% block maincolumn_content %}
{% block content_column_content %}
<div class="grid-row">
<div class="column-one-third">
{{ sub_navigation(navigation_links) }}
</div>
<div class="column-two-thirds">
<h1 class="heading-large">Trial mode</h1>
<h1 class="heading-large">Trial mode</h1>
<p>When you set up a new service it will start in trial mode. This lets you try out GOV.UK Notify, with a few restrictions.</p>
<p>A service in trial mode can only:</p>
<ul class="list list-bullet">
<li>send 50 text messages and emails per day</li>
<li>send messages to you and other people in your team</li>
<li>create letter templates, but not send them</li>
</ul>
<p>
To remove these restrictions, you can
{% if current_service and current_service.trial_mode %}
<a href="{{ url_for('.request_to_go_live', service_id=current_service.id) }}">send us a request to go live</a>.
{% else %}
send us a request to go live.
{% endif %}
</p>
<p>Before you can request to go live, you must:</p>
<p>When you set up a new service it will start in trial mode. This lets you try out GOV.UK Notify, with a few restrictions.</p>
<p>A service in trial mode can only:</p>
<ul class="list list-bullet">
<li>sign our data sharing and financial agreement</li>
<li>accept our terms of use</li>
<li>set up your service so youre ready to send and receive messages</li>
</ul>
<p>
When we receive your request well get back to you within one working day.
</p>
<li>send 50 text messages and emails per day</li>
<li>send messages to you and other people in your team</li>
<li>create letter templates, but not send them</li>
</ul>
<p>
To remove these restrictions, you can
{% if current_service and current_service.trial_mode %}
<a href="{{ url_for('.request_to_go_live', service_id=current_service.id) }}">send us a request to go live</a>.
{% else %}
send us a request to go live.
{% endif %}
</p>
</div>
<p>Before you can request to go live, you must:</p>
<ul class="list list-bullet">
<li>sign our data sharing and financial agreement</li>
<li>accept our terms of use</li>
<li>set up your service so youre ready to send and receive messages</li>
</ul>
<p>
When we receive your request well get back to you within one working day.
</p>
{% endblock %}