Skip to content

Buying AI coding tools: the security, legal and data questionnaire

A procurement questionnaire for AI coding tools asks each vendor about retention, training use, zero data retention (ZDR), processing region, SSO and SCIM, audit logs, IP indemnity and subprocessors. It accepts only answers that name the exact product surface, plan and model route, because one vendor answers differently for each, and then proves them in a trial tenant.

Your security team sends Anthropic, OpenAI and Anysphere the same 300-row SaaS questionnaire it sends every vendor. The answers come back as one sentence: “we do not train on your data.” That is true for the enterprise plan the vendor quoted, not for the consumer accounts your engineers already use, and it says nothing about the transcripts on each laptop.

This page gives the CTO who runs the evaluation, the executive who signs, and their security, legal and data-protection reviewers the 40 questions, what the vendors’ documents already answer, evidence grades, a decision table and trial tests. It is not legal advice: take the legal rows to counsel with the legal and IP checklist.

Why does a standard SaaS questionnaire miss the risks of coding agents?

Section titled “Why does a standard SaaS questionnaire miss the risks of coding agents?”

A generic questionnaire assumes one product, one data store and one set of terms. Coding agents break all three. The account decides the terms: the same Claude Code binary runs under Consumer Terms on Free, Pro and Max and under Commercial Terms on Team, Enterprise and the API. The plan and the model route change the answer: SSO, SCIM and ZDR sit on different plans, and ZDR does not follow you onto a cloud marketplace. And the client creates data of its own, while strict settings such as ZDR switch features off (rows B3, B4 and C3).

So every question below carries one instruction: answer per surface, per plan, per model route. An answer without that scope is graded as unanswered.

The questionnaire: 40 questions in nine sections

Section titled “The questionnaire: 40 questions in nine sections”

Send it in writing. “Accept” is what a complete answer contains; “Verify by” is how you check it yourself.

#Ask the vendorAccept an answer thatVerify by
A1Which surfaces does each answer cover: CLI, IDE extension, desktop, web or cloud agents, review bots, mobile, chat integrations?Lists every surface you will licenseThe order form’s product lines
A2Which model routes are in scope: your API, a cloud marketplace (Bedrock, Google Cloud, Foundry), or our gateway?Answers each later section per routeYour planned model hosting architecture
A3Which terms document, in which version, governs each plan?Names document, version and effective dateThe document, filed in your terms register
A4Which account types can reach our code, and can an admin block the rest?Separates consumer from business accounts and names the blocking controlTrial test T1
#Ask the vendorAccept an answer thatVerify by
B1What do you retain (prompts, completions, files, tool output, transcripts), and for how long, per plan and route?Gives a period per data type and planDated data-usage page or DPA annex
B2Is any of it used for training? What is the default, and who can opt us in?Says “no by default under commercial terms” and names every opt-in programme and its controllerContract clause and the opt-in state in your admin console
B3What leaves through feedback commands, bug reports, satisfaction surveys, telemetry and error reports, and for how long?Lists each channel, its retention and its admin switchTrial test T4
B4What does the client store on the developer’s machine, where, for how long, encrypted or not?Names the paths and the retention settingInspect a trial machine
B5How do we delete sessions and data, and when is deletion complete, backups included?Gives a mechanism and a time boundDelete a trial session; get written confirmation
#Ask the vendorAccept an answer thatVerify by
C1Is ZDR available on our plan, at what cost, and who enables it?States eligibility, cost and enablement pathOrder form line or written confirmation
C2Is ZDR per organization or workspace, and do organizations we create later inherit it?Says exactly what a new organization inheritsCreate a second trial organization
C3Which features are disabled under ZDR, and which were never covered by it?Gives both listsTrial test T5
C4Which models require retention, or are unavailable, under ZDR?Names the models and the governing policyThe model picker in a ZDR trial organization
C5What do you retain anyway, for legal or abuse reasons, and how long?Gives the trigger and maximum periodContract or policy text
#Ask the vendorAccept an answer thatVerify by
D1Where is inference processed and data stored at rest, per model route?Gives regions per routeDPA annex; cloud-route documentation
D2Can an admin enforce a region on every client, and what does that cost or disable?Names the control, price effect and lost featuresA managed setting on a trial machine
D3What transfer mechanism covers data leaving the EEA?Names it in the DPAThe DPA; see EU software regulation for GDPR processor duties
D4How is data encrypted at rest, and can we bring our own keys?Names algorithm and key option per routeCloud-route documentation
#Ask the vendorAccept an answer thatVerify by
E1Which plan includes SSO (SAML or OIDC), and can it be enforced for every member?Names the plan and the enforcement switchTrial test T1
E2Which plan includes SCIM, and how fast do CLI tokens, IDE sessions and running cloud agents lose access after deprovisioning?Gives a time bound per surfaceTrial test T2
E3Can we pin logins on managed machines to our organization and block personal accounts?Names the managed settingTrial test T1
E4Which admin roles can change privacy, retention and model settings?Lists roles and rightsThe trial tenant’s admin console
#Ask the vendorAccept an answer thatVerify by
F1Which admin and security events do you log, for how long, and how do we export them?Lists events, retention and export formatTrial test T3
F2Which per-user usage data can we pull by API: content or only metadata?Separates content from metadataCall the API in the trial tenant
F3Can the client export telemetry to our OpenTelemetry collector, with prompt text off by default?Names the setting and defaultPoint a trial client at a test collector
F4Are cloud-agent actions logged, and can we see the log?Describes the log and your accessRun one cloud task and read its log
#Ask the vendorAccept an answer thatVerify by
G1What does your IP indemnity for outputs cover and exclude?Quotes the clause, including exclusions for modified or combined outputsCounsel; see legal and IP
G2Who owns inputs and outputs?Quotes the ownership clauseThe terms document
G3How, and with what notice, can you change the terms, and does the order form prevail?Gives a notice period and precedence ruleThe order form
G4Is there a DPA, which roles does it assign, and what is your breach-notification deadline?Provides the DPA with controller and processor rolesThe signed DPA
G5Which certifications cover this product, not just the company (SOC 2 Type II, ISO/IEC 27001, ISO/IEC 42001), and do you sign a BAA?Provides reports whose scope names the productThe report’s scope section
#Ask the vendorAccept an answer thatVerify by
H1Who are your subprocessors, every model provider included, and where does each process our data?A dated list with locationsThe published list, filed with its date
H2How do you notify us of a new subprocessor, and can we object?A notice period and an objection rightThe DPA
H3For each model you offer, which company processes the request, under what retention, and can an admin restrict us to compliant models?Answers per model and names the controlThe trial tenant’s model list
H4Who is responsible for data the agent sends to MCP servers, connectors and other integrations?Says integrations follow their own terms, or covers them by contractYour MCP allowlist and MCP security policy
#Ask the vendorAccept an answer thatVerify by
I1Where do cloud agents run, how are they isolated, and what egress do they have?Describes isolation and egress controlsVendor security documentation
I2How are repository and other credentials held for cloud agents?Says whether credentials enter the execution environmentThe same; see agent identity and secrets
I3Can admins enforce permissions, MCP servers, plugins and hooks so developers cannot override them?Names the managed configuration mechanismDeploy it to a trial machine; see managed policy
I4Can we pin client versions or a release channel, and how do security fixes ship?Names channels and update controlThe client’s settings
I5How do researchers report vulnerabilities, and how are customers notified?Names the programme and notification pathThe public disclosure page

What do the vendors’ own documents already answer?

Section titled “What do the vendors’ own documents already answer?”

Read these before the vendor call, so it covers only the gaps. Each row is what the vendor published on 2026-09-26, not your contract; re-read the source before you rely on it.

Sources: Anthropic’s Claude Code pages on data usage, zero data retention, feature availability, legal and compliance and authentication.

QuestionWhat the documentation said on 2026-09-26
A3 termsCommercial Terms for Team, Enterprise and API users; Consumer Terms for Free, Pro and Max
B1 retentionCommercial: 30 days standard. Consumer: 5 years if the user allows model improvement, 30 days if not
B2 training“Anthropic does not train generative models using code or prompts sent to Claude Code under commercial terms”, unless the customer opts in, for example through the Development Partner Program, which an organization admin enables and which exists only on the first-party API
B3 feedbackTranscripts sent with /feedback, /bug or /share are kept for 5 years; DISABLE_FEEDBACK_COMMAND=1 turns the command off. The optional transcript share after the session-quality survey uploads the transcript and session log, kept up to 6 months; CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1 disables the survey
B4 local dataTranscripts in plaintext under ~/.claude/projects/ for 30 days by default, adjustable with cleanupPeriodDays
C1, C2 ZDRQualified Claude for Enterprise accounts only; not in the standard Enterprise plan; enabled per organization by the account team; a new organization does not inherit it
C3 ZDR scopeNot covered: claude.ai chat, Cowork, analytics metadata, seat management data, third-party integrations. Disabled: cloud sessions, Claude Tag, Artifacts, feedback commands, Remote Control. Code Review and Ultrareview are not available to ZDR organizations, and the analytics dashboard shows usage metrics only, without contribution metrics
C4 modelsFable 5.1 and Fable 5 are Covered Models that require retention by default; whether a ZDR organization can use them is governed by the Covered Models policies
C5 retention anywayFlagged sessions: inputs and outputs may be kept for up to 2 years, even under ZDR
D1, D4 routeZDR applies only to Anthropic’s direct platform. Encryption at rest: AES-256 on the Anthropic API; AWS-managed keys with customer-managed keys through AWS KMS on Bedrock; CMEK on Google Cloud; on Microsoft Foundry “Hosted on Azure”, prompts and completions stay within Azure
E1, E3 identitySSO on Team and Enterprise. forceLoginMethod and forceLoginOrgUUID in managed settings pin claude.ai logins to your organization; deploy them through device management, because server-managed settings cannot redirect a first login. Not checked against the organization: Claude Console logins (the UUID only pre-selects it), sessions signed in before the keys arrived, and claude setup-token and /install-github-app, which enforce only forceLoginMethod
E2 SCIMEnterprise only
F1, F2 auditCompliance API and Enterprise Analytics API on Enterprise; analytics dashboard on Team and Enterprise; audit logs are among the ZDR admin capabilities; a self-hosted Claude apps gateway keeps its own audit log and sends neither it nor your developers’ IdP identity to Anthropic
G5 BAAA signed BAA extends to Claude Code API traffic only when ZDR is enabled for that organization. Compliance reports are in the Anthropic Trust Center

The gateway trap for D2 and I3: when ANTHROPIC_BASE_URL points at any host other than api.anthropic.com, Claude Code turns off server-managed settings and Remote Control. Your data route and your policy route are one decision.

How do you verify each answer against the exact product and plan?

Section titled “How do you verify each answer against the exact product and plan?”

A written answer is a claim. Grade it by its strongest evidence, then close the gap between claim and machine with a trial tenant and managed configuration.

GradeEvidenceWhere it is enough
AContract text or DPA for your plan, and reproduced in your trial tenant or enforced by managed configurationRequired for sections B, C, E and H
BVendor documentation that names your plan and route, dated when readAcceptable for D, F and I, with a re-check date
CA sales email, call notes or a trust-center summaryNever enough on its own; turn it into A or B before signature
DNo answer, or an answer without plan and routeTreat as “no”
  1. Write the scope line first. One sentence per tool: surfaces, plan, model route, seats and allowed data classes, for example “Claude Code CLI and VS Code extension, Enterprise plan, Anthropic API route, 120 seats, internal and confidential code, no personal data.” The data classification decides the data classes.

  2. Ask for documents, not answers: order form draft, terms version, DPA, dated subprocessor list and the SOC 2 Type II report with its scope section, each filed with its date.

  3. Map every answer to a clause with the first prompt below: a quoted clause, a dated documentation page, or NOT FOUND.

  4. Reproduce the critical answers in a trial tenant with the tests below, on two managed machines. Run the pilot in the same tenant.

  5. Enforce what you verified with managed policy. An answer no setting enforces is a promise, not a control.

  6. Decide with the grades, then sign, and file the grades with the contract for the renewal.

Which trial-tenant tests prove the critical answers?

Section titled “Which trial-tenant tests prove the critical answers?”

Run these on a managed machine with the configuration you plan to deploy; each pass condition can be screenshotted and dated.

TestProvesStepsPass condition
T1A4, E1, E3: only company accounts workSign in with a personal accountThe client refuses the login or exits at startup
T2E2: deprovisioning cuts accessRemove a test user in your IdP, then use the CLI, the IDE and a running cloud agentEvery surface loses access within the stated time
T3F1: admin actions are loggedChange a privacy or model setting, then export the audit logThe event shows actor, time, old and new values
T4B3: nothing leaves through feedbackRun the feedback command and watch outbound trafficThe command is disabled or blocked by the documented switch
T5C3: the ZDR carve-outs are as statedTry each feature on the “disabled under ZDR” listEach returns the documented error; none is on your must-have list
T6B4: local data follows policyInspect the local data directories after a day of useRetention and contents match the deployed setting

The commands that show which account and organization a machine uses:

Terminal window
# terminal on the managed trial machine (Claude Code 2.1.283)
claude auth status --text

With forceLoginMethod and forceLoginOrgUUID deployed, a claude.ai login to another organization produces an error and Claude Code exits at startup: the T1 pass. Repeat T1 for the unchecked paths in the E1, E3 row above: a Console login, a session signed in before the keys arrived, claude setup-token and /install-github-app (authentication page, checked 2026-09-26, Claude Code 2.1.283). These paths are expected to succeed; record the result and name the compensating control (device-management sign-out, API-key policy) in the decision table.

How do the grades turn into a buying decision?

Section titled “How do the grades turn into a buying decision?”
SituationDecision
Every row in B, C, E and H is grade A, the rest are B or betterBuy
A row in D, F or I is grade C, with a compensating control (for example a gateway that logs requests)Buy with a written condition and a date to close it
Any B, C, E or H row is below A for a data class in the scope lineNarrow the scope line, or stop
A must-have feature is disabled under the retention setting you need (T5)Choose the feature or the setting, in writing, before signature
The vendor will not answer per plan and routeStop; the answers cannot be verified

Sign-off follows the sections. Security owns E, F and I; legal and the data-protection officer own B, C, D, G and H; the CTO owns the scope line, the trial tests and the managed configuration. The executive signs only when the table says buy or the conditions are in the order form, and first asks who accepted the features the retention setting removes and when T1 last ran.

Run these in any of the three agents with the vendor documents in the working directory. They prepare evidence for reviewers; they do not replace them.

How do you keep the answers true after signature?

Section titled “How do you keep the answers true after signature?”

Answers decay as vendors add surfaces, models, subprocessors and terms. Re-check from the same register the legal team uses:

TriggerRe-checkOwner
QuarterlyTerms version, subprocessor list, one run of T1 and T3CTO, with security
A new plan, surface or model routeThe whole questionnaire for the new scope lineCTO
A new model, especially one with its own retention rulesC4 and H3Security
A subprocessor or terms-change noticeH1, H2 and the changed clausesLegal / DPO
A new MCP server or integrationH4 and the MCP security policyPlatform team
RenewalEvery grade, 90 days before the renewal dateCTO and procurement

If you are building toward ISO/IEC 42001 or SOC 2, the dated grades and test results are the vendor-management evidence those audits ask for; see AI management standards.

What goes wrong when you buy AI coding tools?

Section titled “What goes wrong when you buy AI coding tools?”

The answers describe a plan you did not buy. The vendor answered for Enterprise; your order form says Team. Recovery: re-grade every row against the order form, then upgrade the plan or narrow the scope line.

Personal accounts keep working after the rollout through the paths in row E1, E3. Recovery: force a sign-out through device management, run T1 on every machine, and let legal assess past sessions as a disclosure.

ZDR switched off the feature the pilot depended on (row C3). Recovery: pilot under the retention setting you will buy, with T5 in the entry criteria.

The gateway broke central policy (the gateway trap above). Recovery: deliver managed settings by file or MDM, or use Anthropic’s self-hosted Claude apps gateway, which serves them by IdP group; then re-run the trial tests on that route.

An integration carried the data out. An MCP server sent the code to a service nobody reviewed. Recovery: an MCP allowlist in managed configuration, and an H4 review for every server on it.

The certification did not cover the product. The SOC 2 report’s scope named the company’s API, not the coding tool. Recovery: ask for a report or bridge letter that names the product, and grade G5 as C until then.

Nobody noticed a terms change. Recovery: the quarterly re-check above, and the date read next to every quoted clause.

Where the model runs decides the model route in your scope line. After buying, enforce the answers with managed policy and prove the value with a pilot.

Frequently asked questions

What should a security questionnaire for an AI coding tool ask that a normal SaaS questionnaire does not?

It must pin every answer to a product surface, plan and model route, then ask about data the agent itself creates: local transcripts, feedback uploads, cloud execution, third-party integrations such as MCP servers, and which features stop working under zero data retention.

Does zero data retention cover everything in Claude Code?

No. On 2026-09-26 Anthropic's documentation said ZDR covers Claude Code inference on Claude for Enterprise, is enabled per organization, and does not cover claude.ai chat, Cowork, analytics metadata, seat data or third-party integrations. Cloud sessions, Claude Tag, Artifacts, feedback commands and Remote Control are disabled under it.

How do you verify a vendor's answer instead of trusting it?

Grade every answer by its evidence: a signed document for your plan, then a test in a trial tenant (a personal login that must fail, a deprovisioned user who must lose access, an audit event that must appear), then a managed setting that enforces it on every machine.

Which plan do SSO and SCIM need for Claude Code?

Anthropic's feature table, checked 2026-09-26, lists SSO on Team and Enterprise, and SCIM, the Compliance API and zero data retention on Enterprise only, with ZDR requiring separate enablement for qualified accounts.