Politica de confidențialitate
What Spinrun collects, why, how long it is kept, and the rights you have over it.
Ultima actualizare v2026-10-05
This policy explains what Spinrun does with personal data. It covers the marketing site, the application, and the gateway your agents call.
For data you send through the gateway, you are the controller and we are your processor: you decide what your agents do, and we carry it out. For your own account and billing details, we are the controller.
Cuprins
1.Who we are
Spinrun is operated by BirdAI S.R.L., a company registered in Romania. It is the controller for account, billing and website data, and the processor for everything your agents send through the gateway.
- Legal name — BirdAI S.R.L.
- Sediul social — Str. Dinicu Golescu nr. 7, Sector 1, București, Romania
- Privacy contact — legal@spinrun.ai
2.Controller and processor
We are the controller for the data we need in order to run the business: your account, your workspace, your plan, the invoices, the security and abuse signals, and the support conversation.
We are your processor for everything else — the arguments your agents send, the responses they get back, the artifacts they write, and anything you put into Brain. You decide what happens to that data; we act on your instructions, which are the configuration you set and the calls your agents make. Providing notice to the people whose data that is, and having a lawful basis for it, remains yours.
3.What we collect
Six kinds of data, for six different reasons.
Account data
Your name, email address, workspace name, role and plan. Needed to give you an account, put you in a workspace, and bill it.
Connection credentials
The OAuth tokens or API keys you grant when you connect an application, the scopes they carry, and when they were last used. Needed for an agent to act on your behalf. Held in an encrypted vault, never in configuration files or environment variables.
Content your agents send
The arguments of each call, a preview of each response, the artifacts agents write, and anything you add to Brain. This is your data. We hold it to run the Service and to let you see what happened.
If you connect GitHub, it also includes the repositories you choose for an agent. The agent clones them into its sandbox to read and work on, and the working copy is kept between runs so it can pick up where it left off. You choose the repositories on GitHub's own pages, and removing one there, or uninstalling the app, ends access at the next run.
Activity and security data
A record of each gateway call: which tool ran, the action, the outcome, how long it took. Alongside it, the ordinary operational record — IP address, user agent, timestamps, rate-limit and abuse signals, errors. Needed so you can see what your agents did, debug it when they get it wrong, and so we can keep the Service standing up.
Billing data
Plan, billing contact and invoices. We do not run self-serve checkout and do not take card payments, so no card number ever reaches us — there is nothing to store and nothing to leak.
Usage data
How the site and the product are used, in two separate halves that never meet.
On the marketing pages, and only if you accept the cookie banner, PostHog records which pages are opened, what is clicked, and a replay of the page as you saw it with every input field masked. Refusing costs you nothing and changes nothing about what you can read.
Inside the product, we record a short list of events on our own servers, against your account identifier, with your workspace's identifier beside it: a workspace being created, an app being connected, onboarding being finished, an AI client being authorized, a chat being started, which tools are called (a sample of calls, not every one: the tool and app, whether it worked and how long it took), an agent's run finishing (how it ended, how long it took and how many steps and tool calls it made), an approval being decided (approved or denied, and how long it waited), and credits running out. No script runs in your browser for this, nothing is stored on your device, and the events never carry what your agents read or wrote: no messages, prompts or answers, no tool inputs or results, no file names, and nothing you typed. If the list grows, it grows in the same direction: what happened, never what was in it.
4.What we do not do
We do not sell personal data. We do not use your content or your connected application data to train machine-learning models, and we do not permit the providers we use to do so either.
We run no advertising technology: no tracking pixel, no retargeting tag, nothing that follows you off this site or builds a profile of you to sell. Nothing records your session.
When a page or a request fails, a technical error report goes to Sentry, our error-reporting service, on its European servers in Frankfurt. A report says what kind of error it was and its message, with anything the message quotes or puts in brackets removed, except a property name or a short error code; where in our code it happened; which page it was on (the page's route, with identifiers and the query string removed); and which browser and operating system you use, read on our server from the user-agent header your browser sends with every request. A report from the agents runtime also names the run, chat, agent and workspace by their internal identifiers. Reports are built to leave out what you typed or read, your messages, what your agents handle, your cookies, your name, your email address and your IP address: they are assembled from a short list of fields, and an error message is cut down before it is sent. The code that sends them stores nothing on your device and reads no information stored on it. It is part of our own site and reports through our own server, so no third-party script is loaded into the product from anywhere else.
The one measurement tool we do run is PostHog, on the marketing pages, and it does not load until you have accepted it. If you refuse, nothing is requested from it and nothing about your visit is measured.
We do not read your connected applications for any purpose other than carrying out the calls your agents make.
5.Why we are allowed to
Under the GDPR every purpose needs a lawful basis. Ours are:
- Contract — creating and running your account, executing the calls your agents make, holding your connections, metering credits, and answering support.
- Legitimate interests — keeping the Service secure and available, investigating abuse, debugging failures, understanding which parts of the product are used from the server-side events described above, and keeping the business records a company has to keep — weighed each time against the rights of the people whose data it is. You can object to any of it at the address below.
- Consent — analytics cookies on the marketing site, and marketing email — occasional product updates, which you opt in to with a box that starts unchecked, at onboarding or in Settings → Emails. Nothing else. Cookie consent is asked for before anything loads, never assumed from continued browsing, and withdrawing it is one click from the footer of any page. Email consent is withdrawn with the Unsubscribe link in every such email, or in Settings → Emails, and takes effect immediately.
- Legal obligation — tax and accounting records, and responding to a lawful request from an authority.
- Your instructions — everything we process as your processor, where the basis for the underlying data is yours to establish rather than ours.
6.AI processing
Two parts of the Service send data to a model. The playground sends your conversation and the tool results it receives. Brain sends the documents you ingest, in order to turn them into embeddings that make search work.
By default both go to Google's Gemini models through the Vercel AI Gateway — we hold no model-provider keys of our own. A workspace that brings its own Anthropic, OpenAI or Google API key sends its model calls, the playground's included, directly to that provider instead, under its own agreement with that provider and not through the gateway, except the premium generation tools (Gemini text, image and video generation), which run through Spinrun on Spinrun's credits. Brain's embeddings always use Google's model through Spinrun, whatever keys a workspace brings. So there are at most two places to look when you want to know where a prompt went: the gateway, or the provider whose key your workspace added.
Neither we nor the providers we route through are permitted to train on your content. Model output is generated text: it can be wrong, and it is your decision what to do with it. Nothing the model produces is used to make a decision about a person with legal or similarly significant effect.
7.How it is protected
The measures that matter most, stated plainly:
- Connection credentials are held in an encrypted vault, never in configuration files or environment variables.
- Every workspace is isolated at the database row level, so one workspace's queries cannot reach another's rows.
- Read, write and destructive rules are enforced at the gateway, before a call reaches the connected application — not in a prompt, which an agent can talk itself out of.
- Repository access uses a short-lived, read-only GitHub token minted for each sandbox run and limited to the repositories you chose. It is attached outside the sandbox, so code running inside never holds it, and it is revoked when the run ends.
- Agent-authored content is served sandboxed, from an opaque origin, with no session cookie attached. The routes that serve it are deliberately excluded from the middleware that would otherwise set one.
- Object storage is private. No pre-signed URL is ever minted; every read goes through an authenticated route.
- The nightly retention job authenticates with a shared secret and refuses to run without it, so it fails closed rather than open.
8.How long it is kept
Activity logs and the payloads inside them have separate windows, both set by your plan. A job at 04:00 UTC each night scrubs payloads past their window, deletes log rows past theirs, and does it automatically rather than on request.
PlanActivity rows / payloadsGratuit7 days / 1 dayPro30 days / 7 daysBusiness (legacy)90 days / 30 daysEnterprise365 days / 90 days- Offloaded tool results — when a response is too large to hand back inline it is stored and referenced by a handle. Both the record and the stored object are deleted 24 hours later, on a fixed timer that no plan extends.
- Sandbox keys — short-lived credentials issued to a sandbox are deleted one day after they expire.
- Usage data — analytics events and session replays are deleted on the retention window configured in our PostHog project, and replays are kept for a materially shorter time than events. Withdrawing consent stops any further collection immediately; to have what was already collected deleted, write to us and we will remove it.
- Account data — kept while your workspace exists. When you close it, connected authorisations are revoked and workspace data is deleted, except where we must keep records to meet a legal obligation — invoices, most commonly, which Romanian law requires us to keep for ten years.
9.Who else processes it
We use a small number of subprocessors to run the Service. Each is bound by a data-processing agreement, and we give 14 days' notice before a new one starts processing your data.
FurnizorWhat it doesVercelApplication hosting and delivery.RailwayRuns the database, the gateway and the agents runtime, in its EU West region (Amsterdam).Vercel AI GatewayRoutes model calls by default. A workspace that brings its own model-provider key sends its model calls directly to that provider instead, except the premium generation tools (Gemini text, image and video generation), which run through Spinrun on Spinrun's credits.GoogleThe Gemini models behind the playground (unless your workspace brings its own key) and Brain embeddings, and Google sign-in.E2BRuns agent-authored code, on plans where sandboxes are enabled.Cloudflare R2Storage for agent-authored artifacts and offloaded tool results, and for the source and built releases of the Apps you build; these are not region-pinned. From the release that turns uploads on, it also stores files people upload to Apps, in a bucket in the EU jurisdiction.Cloudflare WorkersBuilds and runs the Apps you build. Each App's database and log are held in Durable Objects in the EU jurisdiction. The runtime's diagnostic logs, which can include what an App's code prints and each request's address and headers (an uploaded file's name among them), are kept by Cloudflare and are not region-pinned.ComposioThe toolkit catalogue and connection infrastructure behind many integrations.CloudflareTransactional email sent from mail.spinrun.ai — account and sign-in mail (confirmation, password reset, email change), invitations, and product and admin notices.PostHogAnalytics for the marketing site, on European servers. Receives nothing until you accept the cookie banner. Also receives the server-side product events described above.SentryError reports from the site, the application and the agents runtime, on European servers in Frankfurt: what failed and where in our code, built to leave content out, and with no session recording.10.International transfers
Some subprocessors operate outside the European Economic Area. Where data leaves the EEA it is transferred under the Standard Contractual Clauses adopted by the European Commission, or an equivalent approved mechanism, with technical measures — encryption in transit and at rest, access control — behind them. Write to us if you want the detail for a particular provider.
Analytics is deliberately not one of them. PostHog is used on its European instance, so nothing measured about your visit or your use of the product leaves the EEA in the first place — which is a stronger answer than a transfer safeguard, and the reason that instance was chosen.
11.Your rights
Under the GDPR you can ask for a copy of your personal data, ask us to correct or delete it, object to or restrict how we process it, withdraw a consent you gave, and ask for your data in a portable form. Write to legal@spinrun.ai and we will respond within one month. We may need to confirm who you are first, and where we hold the data as someone else's processor we will pass the request to them rather than act on it ourselves.
We have not appointed a Data Protection Officer; the GDPR does not require one for processing of this kind. Requests go to the address above and are handled by the people who built the Service.
If you are unhappy with how we have handled a request you can complain to your national data protection authority. In Romania that is Autoritatea Națională de Supraveghere a Prelucrării Datelor cu Caracter Personal (ANSPDCP) — https://www.dataprotection.ro/, anspdcp@dataprotection.ro, B-dul G-ral. Gheorghe Magheru 28-30, Sector 1, 010336 București, Romania.
13.Children
The Service is not directed at children and we do not knowingly collect their personal data. If you believe a child has given us data, write to legal@spinrun.ai and we will delete it.
14.Changes
We update this policy when the Service, our subprocessors, or the law change. The date at the top always reflects the current version, and we tell workspace owners by email before a material change takes effect.
15.Contact
Privacy questions and data requests go to legal@spinrun.ai. Anything else reaches us at sales@spinrun.ai.