Official upstream source mirror. Do not make UH changes here.
  • Ruby 99.5%
  • HTML 0.3%
  • Dockerfile 0.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Keith Lawrence d8e065cadb
Merge pull request #1494 from alphagov/fix-content-enrichment-bad-request
Make paths RFC-192 compliant before getting them from content store.
2026-09-28 15:56:20 +01:00
.github Bump ruby/setup-ruby from 1.321.0 to 1.324.0 2026-09-22 07:03:42 +00:00
app Reject null bytes in contact forms 2026-09-17 20:41:51 +00:00
bin Add binstubs 2026-04-15 10:54:22 +01:00
config Use Rails 8.1 defaults 2026-04-09 09:32:28 +01:00
db Speed up AnonymousContact.summary 2026-06-22 20:58:25 +00:00
lib Make paths compliant before getting them from content store. 2026-09-28 10:47:46 +01:00
log Blank rails-4.1.1 app created using rails-api 2014-06-18 17:22:22 +01:00
public Remove html files and images added in rails 7.2 upgrade 2024-10-25 15:04:49 +01:00
spec Make paths compliant before getting them from content store. 2026-09-28 10:47:46 +01:00
.dockerignore Remove obsolete Jenkinsfile. 2024-01-31 16:20:45 +00:00
.gitignore Add spec/reports/pact to .gitignore 2024-06-05 15:18:52 +01:00
.govuk_dependabot_merger.yml Update to govuk-dependabot-merger v2 and automerge external deps 2024-04-12 16:14:37 +01:00
.rspec Add rspec 3.0.0 2014-06-18 17:51:09 +01:00
.rubocop.yml Add standard header to protect .rubocop.yml 2021-11-09 09:50:35 +00:00
.ruby-version Update ruby to version 4.0.6 2026-07-21 13:34:49 +01:00
config.ru Run rails app:update for 6.1 2021-07-14 09:25:14 +01:00
Dockerfile Bump Ruby from 3.4.4 to 4.0.2 2026-04-15 10:54:22 +01:00
Gemfile Finalise Pact v2 migration 2026-09-10 14:54:25 +01:00
Gemfile.lock Merge pull request #1491 from alphagov/dependabot/bundler/aws-sdk-s3-1.232.1 2026-09-22 09:59:04 +01:00
import.rb Fix RuboCop errors 2023-02-28 14:22:31 +00:00
LICENCE Add LICENCE file 2017-11-22 10:06:30 +00:00
Procfile Add Foreman configuration for 'sidekiq' queue 2014-08-15 13:45:15 +00:00
Rakefile fix: don't try to load RSpec outside dev or test 2026-09-16 11:49:22 +01:00
README.md Fix broken markdown for link 2023-12-21 09:55:56 +00:00

Support API

This app provides an API for storing and fetching anonymous feedback about pages on GOV.UK. Data comes in from the feedback app on the public-facing frontend and is read by the support app on the admin-facing backend. Alternatively, some types of feedback are sent to Zendesk so it can be acted on by the support teams directly.

Support API can receive feedback about any page on GOV.UK, but all it is sent is the path. We use the content-store to look up extra information (content_id, associated organisations, etc) about these pages to allow for better search and filtering of the feedback.

Support API also stores ratings for services. It aggregates those ratings every day in order to keep the size of the database manageable - see config/schedule.rb for more details. Previously the aggregate ratings were uploaded to the performance platform, which no longer exists.

Nomenclature

  • Feedback: Everything stored in the app is considered to be "feedback" of some form or other and relates to pages published on GOV.UK. Confusingly most of the data also comes from the feedback app, but when we talk about feedback in the context of the support-api we don't usually mean the feedback app, we mean the data stored in the database.
  • Anonymous Contact: All feedback stored in this app is anonymous. This is in contrast with the Named Contact feedback that is sent directly to the support app. All feedback in this app is scanned to see if it may contain Personally Identifiable Information (PII) and flagged if we think it might.
  • Service Feedback: This is feedback that came from the short survey on a "done" page and contains a 1-5 rating for what the user thought of the service.
  • Page Improvement: Unlike other feedback types, this is not stored in the database, but instead is sent directly to Zendesk to be handled by the GOV.UK support team.

Technical documentation

This is a Ruby on Rails app, and should follow our Rails app conventions.

You can use the GOV.UK Docker environment to run the application and its tests with all the necessary dependencies. Follow the usage instructions to get started.

Use GOV.UK Docker to run any commands that follow.

Running the test suite

bundle exec rake

Further documentation

Licence

MIT License