Book a demoDemo

Legal · Chrome extension

Privacy Policy — Chrome Extension.
What the extension reads, and what it keeps.

Last updated: October 12, 2026MARVIN SAS, RCS Paris 907 981 237

This page precisely describes the data collected by the Marvin V2 Chrome extension, who it is transmitted to, and how long it is retained. It is kept up to date with every material change to the scope of processing.

1Data Controller

Marvin SAS — marvin-recruiter (France). The extension is a professional tool intended for an authenticated recruiter user with an account on app.marvins.ai. No processing is performed for an unauthenticated user.

2Data Collected

The extension collects the following categories of data, only when the user has explicitly initiated an action (opening the side panel, importing a profile, sending a message):

Category Content Source
Account identifiers userId, tenantId, user email SSO cookie app.marvins.ai
LinkedIn profiles Name, title, company, profile URL viewed, education, work experiences LinkedIn DOM, via Unipile
Technical data Extension version, browser locale, session identifier Browser
Telemetry Usage events (sidepanel_opened, profile_imported, errors) Extension runtime

The extension does not collect: browsing history outside LinkedIn, private LinkedIn messages (outside threads opened via a Marvin outreach), payment data, geolocation.

3Recipients and Outbound Flows

Data leaves the extension only to the following recipients. All flows are encrypted with TLS 1.2+.

Recipient Data Hosting
Marvin API (api.marvins.ai) Identifiers, imported profiles, events Scaleway (UE, France)
Unipile LinkedIn auth, profile operations EU (sub-processor)
Sentry Runtime errors, stack traces EU (sentry.io EU)
Grafana Cloud Technical traces and metrics EU
LaunchDarkly Feature flag evaluation (userId) US (DPF-certified)

No data is sold. No advertising sharing. No data is transmitted to LinkedIn outside the user's normal browser traffic.

AI writing assistant

When the user clicks an action in the Write tab of a record, the extension sends the Marvin API the text they typed in the side panel (draft, instruction), the selected channel and the identifier of the displayed Marvin record. The Marvin API processes this request with its AI providers (listed in the sub-processors annex); the record context is built server-side, without contact details: position, company, skills and, where applicable, at most the last 8 verified one-to-one LinkedIn/WhatsApp exchanges with the person already in Marvin, which are sent to the AI provider for this feature. The record's name is masked: the full name in the record fields (position, company), and the first or last name alone too in messages, where the social security number (NIR) and IBAN are masked as well. A name written in lower case, a compound name after a hyphen (“Dupont-Zorglub”, “Jean-Dominique”), a first name shorter than 3 letters and third parties' names may remain. Group threads, unverified messages and emails are excluded. For this feature, the extension neither reads nor writes anything on the LinkedIn page: the suggestion is copied to the clipboard and the user pastes it themselves.

4Legal Basis

  • Contract performance (GDPR art. 6.1.b) for the recruiter user: providing the Marvin service.
  • Legitimate interest (GDPR art. 6.1.f) for the LinkedIn profiles processed: allowing the recruiter to organize their professional prospecting in accordance with LinkedIn's public purpose. The candidate is informed at the first outbound interaction.

5Retention Period

Data Period
Local JWT (chrome.storage) Until logout or 7 days (automatic rotation)
Imported profiles Tenant lifetime (deletion on request)
Sentry logs 90 days
Grafana traces 30 days
Telemetry events 13 months maximum (analytics)

6Rights of Individuals

Any concerned individual may exercise their rights of access, rectification, erasure, restriction, portability and objection:

  • Recruiter user — via the app.marvins.ai interface or by writing to privacy@marvins.ai.
  • Candidate / imported profile — by writing to privacy@marvins.ai. An identity verification procedure is in place before processing.

Complaints may be addressed to the CNIL (www.cnil.fr).

7Local Storage

The extension uses chrome.storage.local (browser API, isolated per extension) to persist:

  • The authentication JWT (encrypted at rest by Chrome).
  • User preferences (locale, last opened panel).

No third-party cookies are set. chrome.storage does not leave the user's machine.

8LinkedIn Cookies (li_at / li_a)

When the user clicks Connect in the side panel to link their LinkedIn account, the extension reads the li_at (LinkedIn session) and, if present, li_a (Premium token) cookies via the chrome.cookies API — and only at that specific moment. They are never read in the background, never stored in chrome.storage, never persisted on the extension side.

These values transit encrypted via TLS to the Marvin API, which immediately forwards them to Unipile to provision the session server-side. The Marvin API never stores li_at / li_a in database: only the Unipile identifier (account_id) is persisted after the exchange. The user can revoke the connection at any time from Settings > Integrations.

9Chrome Permissions Requested

Permission Usage
storage JWT and preferences persistence
sidePanel Display of the Marvin interface in the browser side panel (Chrome)
cookies Reading the app.marvins.ai SSO cookie (JWT) and, at click-time, li_at/li_a
activeTab Contextual reading of the active LinkedIn page
scripting Enabling the content script on an optional job site, once the user has granted access to it
Hosts www.linkedin.com, www.apec.fr Content script injection on these sites
Hosts app.marvins.ai, api.marvins.ai SSO sign-in and authenticated API calls
Host *.storage.googleapis.com Displaying stored documents in the side panel (signed links)
Optional hosts resumes.indeed.com, www.cvaden.com Requested only if the user enables this site from the extension, with browser confirmation (Chrome)

No broad <all_urls> permission is requested.

10Changes

Any material change to this policy is the subject of a new version of the extension and an in-panel notification on first startup after the update.


Contact: privacy@marvins.ai.

A question about the extension? privacy@marvins.ai · Privacy policy · Legal notice