Trust and Security Page

Trust

The answers your security review wants, published before you ask

Everything a procurement questionnaire asks is on this page, in writing, with the honest partials marked as partials. The record below is the live one, not a screenshot.

Uptime commitment
99.95%
Data residency
London or Dublin
Incident disclosure
Within 24 hours
Deep green gradient backdrop

Booking service

99.98%

Last 60 days

Where your data lives

Your records stay in the country you chose, on infrastructure we can name.

No data leaves the region you select at sign-up, including backups. The list of every company that touches it is published and versioned, and you are told thirty days before it changes.

The plain facts

Hosted in
London and Dublin, your choice
Backups
Hourly, held 35 days, same region
Encryption
TLS 1.3 in transit, AES-256 at rest
Sub-processors
Four, all listed publicly
Uptime, last 12 months
99.98%
Independent audit
Annual, report on request
See the sub-processor list

Figures are from the last twelve months and are updated on the first working day of each quarter.

Deep green gradient backdrop

Sites on this plan

United Kingdom

Bramble Health

Bristol

6 rooms

Kingsway Clinic

Leeds

4 rooms

Harbour Practice

Southampton

3 rooms
13rooms live across three sites
The questionnaire

Answered in full, including where the answer is not yes

This is the same document we return to procurement teams. Three answers are partial and they are marked as partial, with what is missing and when it lands.

Access and identity

Is access scoped by role?

Yes

Every permission is attached to a role, and a request to widen one is recorded with who approved it and why.

Do you support single sign-on?

Yes

SAML and OIDC on the Group plan, with SCIM provisioning and de-provisioning.

Is multi-factor authentication enforced?

Partial

Available on every plan and enforceable per practice. Enforcing it across an entire group from one switch lands in the first quarter.

Data handling

Is data encrypted at rest and in transit?

Yes

AES-256 at rest, TLS 1.3 in transit, with keys rotated annually.

Can we choose where data is stored?

Yes

London or Dublin, chosen at sign-up and fixed after it. Backups never leave the region.

Can we export everything?

Yes

One click in settings, in a format another system can read, with no ticket and no exit fee.

Do you offer customer-managed encryption keys?

Not yet

Not today, and we will say so rather than imply otherwise. It is not on the roadmap for this year.

Operations

Is there an immutable audit log?

Yes

Every read and write against a member record, kept for six years and exportable in full.

How quickly are incidents disclosed?

Yes

Within 24 hours to affected practices, publicly on the status page, with a written post-mortem inside five working days.

Do you penetration test?

Partial

Annual third-party test with the summary available under NDA. Quarterly testing begins this year.

The trust pack

The full questionnaire, the audit summary, our sub-processor list and the standard data processing agreement, in one download. No form and no sales call attached to it.

Still reviewing

Put the questionnaire in front of the person who answers it

Thirty minutes with the engineer who maintains this page, not an account manager reading from it. Bring your own document and we will go through it line by line.

Security enquiries
security@sirius.example
Data protection officer
dpo@sirius.example
Status and incidents
status.sirius.example

Who you would speak to

Portrait of Priya Nandan

Priya Nandan

Security engineer

Free from 09:30 today

Call length30 minutes
Based inBristol, UK
Reviews handled120+ this year
Book the review call

No sales team on the call unless you ask for one.

About this page

Trust and Security PagePRO

A trust page that answers the review before it is sent: an inverted hero floating a live uptime record, the hosting and retention facts in plain rows, a full security questionnaire with partial answers marked as partial, a public ask-and-answer panel, a booking panel for the engineer who wrote it, and a minimal footer.

Composed from 7 blocks. Installing this page installs all of them, plus the pieces and primitives they use.

Built in the Sirius collection.

Security1: Trust and Security Page

A trust page that answers the review before it is sent: an inverted hero floating a live uptime record, the hosting and retention facts in plain rows, a full security questionnaire with partial answers marked as partial, a public ask-and-answer panel, a booking panel for the engineer who wrote it, and a minimal footer. Seven blocks, one install.

Upgrade to Pro

Pro blocks install through the shadcn CLI with your license key and ship their full source. Docs and live previews stay open to everyone, so you can read every block's details first.

Upgrade Now

Installation

Swap YOUR_EMAIL and YOUR_KEY for the email and license key on your account. Find your license key on your account page.

bash
npx shadcn add "https://ui.beste.co/page/r/security1?email=YOUR_EMAIL&license_key=YOUR_KEY"

This installs the page to components/beste/page/security1.tsx and everything behind it: the seven blocks it composes (navbar72, hero160, about72, faq90, faq91, cta86, footer121), the five components they use (indicator14, location8, card31, button21, badge23) and the shadcn/ui input, textarea and button primitives. Thirteen files.

Quick start

The installed file exports security1Demo alongside the page: the exact props behind the preview above. Spread it to get a working page in one line.

tsx
import { Security1, security1Demo } from "@/components/beste/page/security1";

export default function Page() {
  return <Security1 {...security1Demo} />;
}

Each section is a separate prop, so the usual next step is to keep the demo and replace one section at a time. On this page the facts are what change.

tsx
import { Security1, security1Demo } from "@/components/beste/page/security1";

export default function Page() {
  return (
    <Security1
      {...security1Demo}
      facts={{
        label: "The facts",
        heading: "Where your data lives, and for how long.",
        facts: [
          { term: "Hosting", detail: "Frankfurt and Dublin, both in the EU." },
          { term: "Retention", detail: "Deleted records are gone from backups within 30 days." },
          { term: "Sub-processors", detail: "Four, listed with what each one sees." },
        ],
      }}
    />
  );
}

Props

Every prop is the full prop object of the block that renders that section, so anything the block accepts is accepted here.

PropTypeDefaultDescription
navbarComponentProps<typeof Navbar72>Product navbar
heroComponentProps<typeof Hero160>Inverted hero floating an uptime record
factsComponentProps<typeof About72>Hosting and retention, in plain rows
controlsComponentProps<typeof Faq90>Security questionnaire, grouped
questionsComponentProps<typeof Faq91>Public ask-and-answer panel
ctaComponentProps<typeof Cta86>Booking panel for the engineer who wrote it
footerComponentProps<typeof Footer121>Minimal footer
classNamestringExtra classes for the page's outer wrapper

Sections

SectionBlockNotes
Navbarnavbar72Sticky for the whole document
Herohero160Dark inside the block already, with a live uptime record floating in it
Factsabout72Given bg-muted/40; term and detail rows, no prose
Controlsfaq90The questionnaire, in a two-column grid of groups
Questionsfaq91Also given bg-muted/40; carries the ask-a-question fields, hence the input and textarea dependencies
Bookingcta86Links to a booking page; no form of its own
Footerfooter121Minimal, so the page ends on the booking panel

Behavior notes

  • Every section is conditional on its own prop, so omitting questions removes that section entirely rather than rendering an empty one.
  • There is no dark wrapper on this page even though it opens dark: hero160 is already inverted inside the block, so wrapping it would invert an inversion and hand back a light hero.
  • The navbar is given sticky top-0 z-50 by the page, which works because the block carries its own opaque band.
  • The page sets className="bg-muted/40" on both the facts and questions sections after spreading their props, so a className passed inside those props is overridden.
  • faq90 lays its groups out in a two-column grid, so an odd number of control groups leaves one cell empty on the last row. Three groups is the count that shows it most.
  • Answers marked as partial are written that way in the content, not flagged by a prop. The block renders what it is given, so a half-true answer has to be worded as one.
  • The only fields on the page are in the ask-and-answer panel (faq91), which is where the input and textarea dependencies come from. The booking panel below it is links, not a form.
  • The whole page is a client component, since the blocks it composes are. It fetches nothing and holds no state above the blocks.
  • The page is Pro because blocks inside it are, which is why the licence parameters are on the command above.

Wiring the form up

The ask-a-question panel ships as markup, not as a wired form. For validation and submission, see React Hook Form, TanStack Form, and Formisch.

Blocks in this page

Browse all blocks
PRO

navbar72

Centered Link Navbar

A minimal navbar with a lowercase wordmark, absolutely centered uppercase text links, an accent call to action, and a collapsing mobile menu.

PRO

hero160

Inverted Reliability Hero

A hero built as one dark panel: a light display heading, two actions, and a hairline table of service commitments beside a bordered image column that floats a live uptime strip.

PRO

about72

Open Company Facts

An about section on a soft surface that opens on a light statement, then lays out eight company facts as a two-column hairline definition list beside an image tile floating a live locations card.

PRO

faq90

Security Questionnaire Answers

A procurement FAQ grouping security controls into hairline rows that pair each question with a tone-coded yes, partial, or not-yet chip and the detail behind it, closing on a security pack request.

PRO

faq91

Ask And Answered In Public

An open question FAQ pairing a soft panel that sticks while you scroll, holding a working question and email form, with the questions others sent recently answered as linked hairline entries.

PRO

cta86

Contact And Availability CTA

A closing call to action splitting a bordered container between a hairline contact table and an inverted dark column that floats a live card naming the person you will meet above the booking action.

PRO

footer121

Minimal Centered Footer

A compact centered footer with a lowercase wordmark, a short tagline, an uppercase link row, a social row over a hairline rule, and a copyright line.