The following is a summary of all the tables that the application has, along with a short description of what purpose it serves. Where a table is linked directly to a core data model, a link to the model’s documentation is provided.

<aside> ℹ️ N.B. Tables created by Laravel (e.g. migrations) have been omitted.

</aside>

Table Description
audits An access log of all API interactions.
cached_geocode_results Used to cache the geocoding of a textual address.
collection_page A pivot to link pages to taxonomies.
collection_taxonomies A pivot to link collections to taxonomies.
collections A grouping of related taxonomies.
files The representations of all physical files stored on disk/cloud.
holiday_opening_hours The opening hours for a service location during a holiday period.
locations The physical locations that services operate in.
notifications A log of all communications (email and SMS) that have been sent out.
offerings Elements that a service offers (e.g. Support groups)
organisations The organisations that provide services.
organisation_event_taxonomies A pivot to link organisation events to taxonomies.
organisation_events An event offered by an organisation
organisation_taxonomies A pivot to link organisations to taxonomies.
page_feedbacks End-user feedback provided for pages on the frontend website.
pages A store of all Landing pages and Information pages on the platform.
referrals When a person is referred to a service either by themself or on behalf of. Most of the fields on this table are encrypted.
regular_opening_hours The standard opening hours for a service location.
report_schedules A schedule used to automatically generate reports.
report_types The type of report that can be generated.
reports An internal report to provide the data stored in the database in a presentable aggregated form. This is a physical file (e.g. PDF or Spreadsheet).
roles The different types of backend users.
search_histories A log of all searches made and a count of the results returned. Used for analytics.
service_eligibilities A pivot to link services to eligibility taxonomies.
service_gallery_items A pivot to link services to files.
service_locations A pivot to link services to locations.
service_tag A pivot to link services to tags.
service_taxonomies A pivot to link services to taxonomies.
services A service offered by an organisation (e.g. Debt Advice).
settings Stores settings for the platform. Mainly used for CMS content.
social_medias Social media accounts for a service.
status_updates A paper-trail of when users update the status of a referral.
tags Simple tag system for services.
taxonomies A categorisation for data (e.g. Category or Persona).
update_requests Stores the information for updating a resource. The data is used to
update the resource/table(s) if the update request is accepted by an
admin.
useful_infos Useful information for a service.
user_roles A pivot to link users to roles.
users A backend user of the system.

Entity Relationship Diagram

A Entity Relationship Diagram (ERD) has been produced to show how database tables relate to one another. The following diagram has been produced using MySQL Workbench and the latest workbench file can be found in the API Repo within the database/diagrams folder.

ERD.svg


Metadata

Author: @Mike

Status: Complete

Date created: April 4, 2023

Last reviewed: April 4, 2023