Trust Center
Lanced B.V.

Security, privacy and data handling

Revision 1.0·1 September 2026

Revision1.0 — 1 September 2026
Primary hostingAmsterdam, Netherlands
Storage residencyEU jurisdiction
Review cycleAnnual, or on material change

How the Lanced platform protects personal data, where that data lives, and who processes it on our behalf.

Security Statement

§ 1

Scope and architecture

Lanced is a hiring and casting platform for the performing arts. Companies publish opportunities; artists build a profile and apply; the two sides message, schedule, decide and contract inside the product.

The platform runs as a single API backed by a managed PostgreSQL database, with object storage for media and contracts, and browser applications for the public site, artists, companies, agencies and internal administration. Production is hosted on managed cloud infrastructure in Amsterdam, the Netherlands — the providers behind it are listed in the Sub-Processor Register (§ 9).

Lanced acts as processor for the applicant data a company handles inside its own workspace, and as controller for artist accounts, profiles and the artist-facing product.

§ 2

Authentication and sessions

Lanced does not store or ever receive user passwords. Authentication, credential hosting and identity management are delegated to a specialist authentication provider (listed in the Sub-Processor Register, § 9). The sign-in redirect is protected by a single-use nonce carried in a short-lived, HTTP-only state cookie, and the returning callback is rejected if the nonce does not match.

Sessions are server-side records, not self-asserting tokens. The session cookie is HTTP-only, marked Secure in production, and scoped to the Lanced domain. Every request re-reads the session record and rejects it if it has expired or been revoked, then re-checks that the underlying account is neither disabled nor deleted — so disabling an account takes effect on the next request, rather than whenever a token happens to expire.

A single source of identity

One resolver determines the acting identity for every request, real-time connections included. No route is permitted to derive a session from the raw cookie itself. The development authentication shortcut used on engineers' machines is fail-closed: the API refuses to start if it is present in a staging or production environment.

§ 3

Authorization, isolation and internal access

Workspace access is checked on every request against an active membership record, and a workspace pending deletion stops granting access immediately.

External reviewers — the people a company invites to look at a shortlist without creating an account — hold scoped links rather than sessions. The token behind the link is stored only as a SHA-256 hash, compared in constant time, carries both an expiry and a revocation flag, and is bound to one organisation, one opportunity and an explicit list of permissions.

Database-level enforcement

The API connects to PostgreSQL as a restricted role. At startup it inspects its own role attributes and refuses to run unless it is that role, without superuser rights and without the ability to bypass row-level security. Row-Level Security is enabled and enforced on the artist-owned tables — including special-category data, physical characteristics, settings, drafts, portfolio and the artist audit log — with policies scoping every row to the authenticated user. A separate maintenance role holds broader rights and is reserved for scheduled jobs.

Isolation between company workspaces is enforced in the application layer, on every request, rather than by database policy.

Internal staff access

Lanced staff accounts are a distinct account type with a three-tier permission model (support, operations, administrator) and an independent disable switch. Support-level staff can read and assist, but cannot alter accounts, billing or published content.

Where a staff member needs to see the product as a customer sees it, that access is tightly constrained: sessions expire after 60 minutes on the server, are bound to the individual who opened them and ignored if anyone else signs in, are refused inside the administration tools themselves, and never carry the staff member's own workspace into the customer's view. Start and stop are always recorded, and every action taken during such a session carries the responsible staff member's identity in its audit record.

§ 4

Encryption in transit and at rest

In transit

All public traffic is HTTPS over TLS 1.2 or 1.3; older protocol versions are not offered. Every host sends HTTP Strict Transport Security with a one-year duration covering subdomains. Standard security headers are applied at the API, and cross-origin access is restricted to an explicit list of Lanced origins.

At rest

Encryption at rest is provided by the underlying infrastructure. The managed PostgreSQL database and the object storage buckets are both encrypted with AES-256 using provider-managed keys, and the application host uses encrypted local SSD storage. Lanced does not currently operate customer-managed keys or hardware-backed key wrapping; key management is delegated to the platform providers.

§ 5

Files, self-tapes and contracts

Media is uploaded directly to object storage through short-lived pre-signed links; file contents do not pass through the API. Once an upload completes, the server re-reads the stored file's actual type and rejects it if it does not match what was declared, so a client's claim about its own file is never trusted. Size limits are enforced per media type.

Sensitive material — application materials, self-tapes, message attachments and contract documents — is held in a private scope. It is never given a public address, is served only through links that expire after ten minutes, and in the case of message attachments and private thumbnails is delivered through an authenticated endpoint instead. File identifiers are random. Publicly reachable media is limited to what an artist has chosen to publish on their own profile or portfolio.

Executed contracts are held in a separate storage bucket from ordinary media, and the API refuses to start if the two are configured to the same place. Video and image processing is likewise refused for anything in the private scope, so sensitive originals are never exposed to a processing pipeline in order to be processed.

Object storage is pinned to the EU jurisdiction, and that is the built-in default rather than a deployment setting that can be forgotten.

§ 6

Personal data we process

Casting is an industry where background and physical characteristics are genuinely part of a brief. We treat that data accordingly.

  • Account and identity — name, email address and authentication identifiers. Credentials themselves are held by our authentication provider (§ 9), not by Lanced.
  • Artist profile — biography, location, disciplines, styles, skills, training, career record and external links.
  • Special category data (GDPR Art. 9) — ethnicity. Held alongside date of birth, nationality and gender in a dedicated table, separated from the main profile, protected by enforced Row-Level Security, and never loaded as part of an ordinary profile read.
  • Physical characteristics — comp-card measurements and sizes, in their own table, completed only where the discipline calls for it.
  • Media — photographs, video, self-tapes and application materials.
  • Applications — answers, decisions, review history and the consent record described in § 7.
  • Messaging — conversations, messages and attachments.
  • Contracts — engagement terms, signature records and the executed document.
  • Billing — payment provider references only. No card data ever reaches Lanced systems.
  • Operational — audit records including IP address and user agent, and session records.
§ 8

Access, erasure and retention

Export and erasure are self-service inside the product, not an email request queue. An erasure request is accepted immediately. The only case in which it is held is while a contract is actively awaiting signature, because that identity is required to complete a live signature workflow; the artist is told which contract is blocking it and can proceed once that contract is signed, declined, withdrawn or expired.

Erasure removes a person's identity and authored content, not merely their display name. Messages they wrote are emptied and unlinked, their attachments are marked for deletion, and their participant identifier and read receipts are stripped from conversations. What remains for the other participants is a non-identifying placeholder.

Retention periods enforced by the platform

  • Message attachments — 30 days after the conversation closes.
  • Candidate conversations — 30 days after closure.
  • Deleted media — permanently removed from storage 7 days after deletion.
  • Staff assistance sessions — 60 minutes. Signed media links — 10 minutes.
  • Pre-deployment database snapshots — the most recent 14.

The processes that perform permanent deletion are disabled by default and require both an explicit configuration flag and a named list of permitted jobs before they will run.

§ 9

Sub-processors

Lanced engages a small number of sub-processors — for application hosting and the managed database, EU-pinned object storage and media delivery, authentication and credential hosting, payment processing, electronic signature, transactional and marketing email, error monitoring, and location autocomplete. Each processes personal data only on our instructions and under a written data processing agreement.

The full register — every engaged and planned sub-processor with its purpose, location and transfer mechanism — forms part of our Data Processing Agreement and is maintained in one place: the Sub-Processor Register in our Trust Center. That page is the authoritative and current list. Customers are notified before a new sub-processor is engaged, and planned providers are published there in advance, before any data moves to them.

We deliberately keep the names in one place rather than repeating them across documents, so the register is always the version to rely on.
§ 10

Operations, monitoring and change management

Platform changes follow a pull-request workflow with review before merge. Continuous integration runs type checking, the test suite and a deployment-readiness verification on every change. A separate staging environment runs the same stack and receives every change before production; it is additionally served with headers preventing search indexing.

Production deployments require explicit human approval and take a compressed database snapshot before any schema change is applied; the most recent fourteen are retained. Geographically separated backup storage is on our security roadmap.

Application errors are reported to our error-monitoring provider in its EU data region (§ 9). Request logs redact authorization headers, cookies and known credential fields. Every meaningful action writes an append-only audit record carrying the actor, workspace, target, IP address, user agent and — where applicable — the staff member behind an assistance session.

Incoming notifications from our payment, email and signature providers are all cryptographically verified using constant-time signature comparison. The signature provider is fail-closed: if it is configured without a verification secret, the API refuses to start rather than accept unverified contract events. Repeated verification failures raise an alert. The API is rate-limited per client.

There is no analytics, tag manager, advertising pixel or third-party tracker in any Lanced application, and the product writes no client-side cookies.
§ 11

Incident response and certifications

A written incident-response procedure covering detection, triage, containment, customer notification, recovery and post-incident review is maintained internally and reviewed at least annually. It is available to customers under NDA on request.

Incidents are assessed and escalated by the engineering lead, who holds the standing escalation role. Where a personal-data breach is confirmed, affected customers are notified without undue delay and in line with the Data Processing Agreement.

Certifications

Lanced does not currently hold SOC 2, ISO 27001 or an equivalent third-party attestation. We operate in line with the practices those frameworks describe, and we would rather state our position accurately than imply a certification we do not hold.

Questions

Security and data-protection enquiries, including requests for our Data Processing Agreement, sub-processor change notices or the incident-response procedure, can be directed to your Lanced contact or to privacy@lancedhq.com.

Revision 1.0, 1 September 2026. This statement is reviewed annually and whenever the platform, its hosting or its sub-processors materially change.