Skip to content

Security and data protection

This page is the starting point for a security review. Each section says what GraphPilot does and links the page with the detail.

For personal data in particular, what is recorded, what your origin receives, how long it is kept and every setting that reduces it, see privacy and personal data.

ThroughWhat it controls
gpilot.tomlWho may call (authentication, client profiles), what a request may carry (request limits), which operations run (persisted queries), and what is recorded about a request ([telemetry]).
Your originWhat may be cached and for whom (authenticated requests), and whether a request really came from GraphPilot (verifying the signature).
The portalYour password and multi-factor authentication, sessions, members and roles, API keys, and rotating a service’s signing key.
  • Cached responses are held in the edge cache at the locations that served them, worldwide, with no region pinning. Data that must not leave a region should not be cacheable. See where data lives.
  • Request telemetry is kept in the EU for at most 90 days. How far back Insights reaches depends on your plan, from 1 day on Glider (Free) to 90 days on Jumbo (Enterprise). See telemetry and logs and what Insights needs.
  • authorization and cookie are not stored as sent. By default they are replaced by a keyed digest, and only a handful of descriptive headers are kept. You choose which headers are recorded with [telemetry.headers].
  • The client’s IP address can be kept in full, truncated to its network part, or not stored at all, per service: see client IP address.
  • Which requests are recorded at all can be narrowed with telemetry.record.

Every category of recorded data and the setting that controls it is listed on privacy and personal data.

  • Request signing: every request GraphPilot forwards is signed with a per-service key, so your origin can refuse anything that did not come through it.
  • Origin allowlist: the IP ranges GraphPilot reaches your origin from, for a firewall rule.
  • Authentication: credentials are verified at the edge on every request, a cache hit included.
  • Hardening: request size, query depth, document size, selection and introspection limits, and what the edge does not check.
  • Persisted queries: run only the operations your clients registered.

Incidents and maintenance on GraphPilot’s side are posted on the status page.

Report a suspected vulnerability privately to security@graphpilot.io, not in a public issue or forum. Include the steps to reproduce it, the service hostname or page it affects, and what you observed.