GreyScape.ai

Data + permissions

What GreyScape.ai collects, why, and what each piece unlocks.

Every data feed that powers shadow AI discovery and AI budget control on GreyScape.ai, with two columns: is it required to run the product, and what functionality does it switch on. We never collect data we don't use, and we're explicit about what we deliberately don't see.

Required
Two data sources: Postgres + the env tokens we generate during setup. That's it.
One per provider
A single admin credential per AI provider you use covers every employee in your org.
Never collected
Prompts, responses, source code, document contents, mailbox contents, password-manager data.

Where your data lives

GreyScape.ai is a fully hosted multi-tenant SaaS — we operate the platform on your behalf. You don't deploy or maintain any infrastructure. The entries below describe how your tenant's data is stored, protected, and recovered.

Where your tenant data lives

TodayRequired

Source: GreyScape.ai managed Postgres, hosted on Railway (EU region by default; US region available on request)

Unlocks
Spend events, attribution, budgets, approval requests, audit log, subscription inventory, shadow-AI inventory, browser-extension events — every tenant-scoped object persists here. Every row carries a tenant_id; queries filter to your tenant before they ever leave the database.
Without this
n/a — this is the platform we operate on your behalf, not a credential you supply.

What we don't see from this source: Other tenants' data. Your data is never co-mingled across customers; every read is scoped to your tenant_id. Row-level security policies enforce this at the database engine in Wave 3.0.

Backups + recovery

TodayRequired

Source: Railway daily Postgres snapshots, retained 7 days; point-in-time recovery to any moment within the retention window.

Unlocks
Disaster recovery. If a region outage takes the primary database offline, restore is point-in-time within the retention window.
Without this
n/a — managed for you.

What we don't see from this source: Backups are encrypted at rest and accessible only to GreyScape.ai operators. We never share or extract their contents across tenants.

Encryption at rest + in transit

TodayRequired

Source: Postgres-on-disk encryption (managed by Railway); TLS 1.3 for every connection; AES-256-GCM envelope on every stored provider credential.

Unlocks
Customer data is encrypted on disk, in transit, and at the column level for the highest-sensitivity fields (provider admin keys, OAuth tokens).
Without this
n/a — built in to the platform.

AI provider data (ingestion)

Per provider — connect each one you use. One key per organisation, not per user.

OpenAI admin API key

TodayRequired

Source: Generated in your OpenAI admin console (organisation-level sk-admin- key)

Unlocks
Ingestion of OpenAI token usage and cost. Auto-provisioning of service-account keys when a new workload is approved.
Without this
OpenAI spend is invisible. Dashboard remains seeded sample data for OpenAI.

What we don't see from this source: Prompts, responses, training data, model weights, or anything in the request body. We only read usage metadata.

Anthropic admin API key

TodayRequired

Source: Generated in your Anthropic admin console (sk-ant-admin01- key)

Unlocks
Ingestion of Claude token usage and cost. Auto-creation of a workspace + member key on approval.
Without this
Anthropic spend is invisible. Dashboard remains seeded sample data for Anthropic.

What we don't see from this source: Prompts, responses, training data, or anything in the request body. We only read usage metadata.

Azure OpenAI subscription scope

Coming soonOptional

Source: Azure Cost Management API + Application Insights workspace ID

Unlocks
Ingestion of Azure OpenAI spend per deployment, attributed to the Entra ID user behind each call.
Without this
Azure OpenAI spend stays in the Azure portal — no unified GreyScape.ai view.

AWS Bedrock account access

Coming soonOptional

Source: Cost Explorer + CloudWatch read-only IAM role

Unlocks
Bedrock model invocation costs and token volumes per AWS account.
Without this
Bedrock spend stays in AWS Cost Explorer — no unified view.

Google Vertex AI billing export

Coming soonOptional

Source: BigQuery billing export dataset

Unlocks
Vertex AI spend attributed by Google Workspace user — same dashboard, same rules.
Without this
Vertex spend invisible to GreyScape.ai.

Users + teams

What turns api-key-level spend into per-employee, per-team attribution.

Employee directory (name, email, team, manager)

Coming soonOptional

Source: Your identity provider via WorkOS-mediated SCIM — Okta, Entra ID, Google Workspace, Rippling

Unlocks
Per-user spend attribution, team rollups, chargeback by cost centre, RBAC scoping, in-platform invitations. Joiners / movers / leavers reflect automatically.
Without this
Spend can only be attributed to api_key_id strings (e.g. key_abc123) rather than to humans by name. Teams view rolls up by raw api-key tags. Chargeback is much harder to produce.

What we don't see from this source: Personal identifying data outside name/email/team/manager. We don't read HR records, salary, performance, or anything else from the directory.

AI workload conversations (the scoping chat)

TodayOptional

Source: The requester typing into /request/[token] or /calculator chat

Unlocks
Personalised model recommendations, monthly cost estimates, the entire approval workflow.
Without this
No advisor flow. Calculator + Requests pages become unusable. Approval is reduced to manual budget creation.

What we don't see from this source: The conversation only contains what the user types into the advisor — it never sees their actual production prompts or data.

Shadow-AI detection (additive)

Each source independently increases your shadow-AI surface coverage. Stack as many as you can.

Expense card transactions (Brex, Ramp, Expensify)

Coming soonOptional

Source: API token from the expense system

Unlocks
Detection of personal AI subscriptions paid for on corporate cards — ChatGPT Plus, Claude.ai Pro, Cursor, Jasper, Midjourney, etc.
Without this
Shadow AI surface limited to whatever shows up in SSO sign-in logs and what employees voluntarily declare.

What we don't see from this source: Non-AI transactions. We filter on a vendor allowlist of ~200 known AI tools.

SaaS-management inventory (Productiv, Zylo)

Coming soonOptional

Source: API token from the SaaS-management platform

Unlocks
Auto-discovery of AI tools the company has paid for that haven't been catalogued in IT.
Without this
Manual addition of sanctioned AI vendors. Discovery limited to expense + SSO + provider connectors.

Network / secure web gateway logs (Zscaler, Cloudflare Gateway, Cisco Umbrella)

Coming soonOptional

Source: API access to your gateway's log export

Unlocks
Detection of any employee visit to an AI tool domain — even before they sign up or expense anything. Captures free-tier usage and browser-only agents.
Without this
Free-tier AI usage that never touches a paid account is invisible.

What we don't see from this source: Page bodies, headers, or non-AI traffic. We filter on a curated list of ~150 AI-tool domains.

MDM device inventory (Jamf, Microsoft Intune)

Coming soonOptional

Source: API token from the MDM

Unlocks
Detection of locally-installed AI tools — Cursor, Claude Desktop, Cline, Windsurf, GitHub Copilot CLI, Ollama, LM Studio, local LLM runtimes.
Without this
Local AI tools that bypass the web are invisible. Particularly important for local-LLM exfiltration risk.

What we don't see from this source: Non-AI software inventory. We filter on a known AI-tool app list.

Code repository admin access (GitHub Enterprise, GitLab)

Coming soonOptional

Source: GitHub App or PAT with org admin read

Unlocks
Scanning for leaked AI API keys, unapproved SDK imports, and hardcoded model identifiers across all org repos. Each finding attributed to the commit author.
Without this
Production code calling AI providers with personal keys cannot be detected.

What we don't see from this source: Source code content beyond the specific patterns we scan for (key signatures, import statements, model IDs).

Identity provider event hooks (Okta, Entra ID)

Coming soonOptional

Source: Outbound webhook on app-assignment / new-signup events

Unlocks
Live signal when an employee adds a new AI tool to their SSO inventory — surfaces shadow AI on day one, not next month.
Without this
Shadow signups via SSO are detected only when expense or gateway feeds eventually catch them.

AI gateway + DLP

Active controls — inspect, redact, and enforce policy on every AI API call.

Cloudflare AI Gateway endpoint

Coming soonOptional

Source: Cloudflare account with AI Gateway enabled — used as proxy in front of each AI provider

Unlocks
Inspect every AI API call. PII redaction (emails, names, card numbers). Network-edge enforcement of the approved-models policy. Per-call observability that feeds the dashboard.
Without this
Policy enforcement remains at the recommendation layer only — production traffic is not inspected.

What we don't see from this source: GreyScape.ai itself never sees the redacted prompt content; redaction happens at the Cloudflare edge.

Microsoft Purview DLP catalogue

Coming soonOptional

Source: Purview API tenant + service principal

Unlocks
GreyScape.ai publishes AI-vendor risk metadata into Purview so existing DLP labels and policies apply consistently across the org.
Without this
AI-vendor risk lives only in GreyScape.ai; you maintain duplicate DLP policies elsewhere.

Notifications + alerts

Where alerts go. All silent no-ops if absent.

Admin notification email + transactional email key

TodayOptional

Source: You configure your transactional email provider key and admin notify email

Unlocks
Admin gets an email when a request is submitted. Requester gets an email on approval/rejection. Weekly digest to the CFO.
Without this
All these notifications fall back to in-app only — admins must check /requests manually.

Slack incoming webhook URL

TodayOptional

Source: Created in your Slack workspace settings

Unlocks
Team channel ping on new submissions, decisions, and budget breaches at the 75% / 100% thresholds.
Without this
No Slack ping. Email still works if configured.

Compliance + policy

Org-wide constraints applied at the recommendation layer and (coming soon) at the network edge.

Approved-models policy

TodayOptional

Source: You configure via /settings/policies

Unlocks
AI advisor refuses to recommend disallowed models. Enforces your data-residency, compliance, or vendor-contract constraints at the recommendation layer.
Without this
Advisor recommends from the full model catalogue based purely on cost/quality fit.

AI vendor risk metadata

Coming soonOptional

Source: Maintained by GreyScape.ai, updated quarterly per vendor

Unlocks
Per-vendor posture page: SOC 2 / ISO 27001 / GDPR / EU AI Act, data residency, prompt retention policy, training-on-data toggle, sub-processors.
Without this
You maintain vendor risk yourself in a spreadsheet or GRC tool.

Tamper-evident audit log signing

Coming soonOptional

Source: Cryptographic chaining of each audit record to the previous one

Unlocks
Tamper-evident audit trail required for SOX, FedRAMP, and serious customer audits. Verifier can detect any after-the-fact edit.
Without this
Audit log is still complete and timestamped today, but cryptographic non-repudiation is not yet provable.

What we never collect

Security review pack: a SOC 2 Type II report, sub-processor list, GDPR DPA, and data-flow diagrams are available on request. GreyScape.ai encrypts every provider credential with AES-256-GCM under your own ENCRYPTION_KEY — even GreyScape.ai engineering cannot read your keys.