What data does CREAO collect?
What data does CREAO collect?
CREAO collects the minimum data necessary to provide the service:
- Account data — email address, name, and authentication credentials
- Onboarding answers and progress — if you use guided onboarding, CREAO saves your selected work sector, desired outcome, optional details, connection milestones and progress so you can resume. After you start the agent, your answers provide context to the selected AI model and may inform draft-agent suggestions. Our analytics and engagement services (Statsig and Customer.io) receive your selected sector and outcome, session and step identifiers, and completion metadata, not your free-text answers or connector credentials. Onboarding records are replicated to our analytics warehouse; the views used for onboarding analytics exclude free-text answers and configuration. These records are removed with your CREAO account, and the warehouse mirror follows source deletion.
- Agent Brain context files — for accounts using file-based memory, CREAO can organize information you provide in conversations into private context files, such as travel plans, client records, brand preferences, family and school details, and equipment history. These files may contain personal data about other people you mention, including names, relationships, ages, schools, teachers and contact details. Creation can happen automatically during background curation, without a separate request to remember each fact
- Event registration data — on event-specific registration pages, CREAO may collect your name, professional role, practice area, experience range, an optional question, and a referral source tag to estimate attendance and tailor the session. Event forms do not request client names, matter details, identity-document numbers, or uploaded files. Responses may be submitted directly to a Google Workspace Sheet controlled by the event organizer rather than stored in CREAO’s product databases
- Developer profile — optional display name, company, and website you provide on the CREAO CLI console (
developer.creao.ai/cli). Keyed to your CREAO account and deleted when that CREAO account is deleted. This is CLI data, not the Developer Platform USD account - Developer Platform account — when you first sign in on the Developer product at
developer.creao.ai(a CREAO account must already exist, or is created by that same sign-in), CREAO registers a Developer account: a USD wallet balance in cents (developer_wallets) and a default project (developer_projects). You can add more projects and set each one’s name (up to 100 characters). That name is shown only to you and may incidentally include personal information. You can fund that wallet through Stripe Checkout; each credit is recorded indeveloper_wallet_entries. These rows are a separate product account linked to your CREAO account (agent.creao.aiand CLI). Creating a CREAO account alone does not create them. Deleting your CREAO account does not delete them. They are retained until the Developer account is closed, or until you request erasure at privacy@creao.ai - Developer Platform
/v2run and request logs — when an authenticated project-key request reaches a/v2/*Developer Platform route after authentication and account rate-limit checks, CREAO stores one request-log row (developer_v2_http_requests) with your Developer account identifier, project and project-key identifiers, HTTP method, route pattern and path, handler name, status or error code, created or fetched run identifiers where applicable, agent and conversation identifiers where applicable, timing, request and response byte counts, and settled sell-price USD cents when a run later settles. CREAO also stores a run row (developer_v2_runs) for hosted and general-agent executions, including request identifier, mode, status, timing, input JSON payload, result JSON payload, per-model usage breakdown, settled sell-price USD cents, upstream cost used only to compute that sell price, error metadata when a run fails, and the webhook delivery timestamp. If you setwebhook_url, CREAO POSTs the run result to that endpoint; the URL itself is not stored on the run row. These rows belong to the Developer account, not the CREAO chat account. Deleting the CREAO account does not delete them. They are retained until the Developer account is closed, or until you request erasure at privacy@creao.ai - Developer Platform Console Analytics — when you open Analytics on
developer.creao.ai/analyticswhile signed in to the Developer product, CREAO shows aggregated usage, published account-level/v2limits, settled USD spend, and per-request metadata for projects you own. That page reads the existing/v2ledger rows above; it does not collect a new data category. Session APIs return route pattern, status, duration, model identifier, token counts, and settled sell-price USD cents only. They omit raw paths, prompt and response bodies, error-message text, upstream model cost, and C-end credits. A project that is not yours is treated as not found. A/v2project key cannot call these Console routes - CREAO CLI keys — when you create Account API keys for CREAO CLI, CREAO stores the key label, HMAC token hash, public token prefix/preview, creation and revocation timestamps, and last-used-at timestamp for validation, revocation, audit, and abuse prevention. The raw API key is shown once at creation and is never stored. Account API keys can create, edit, and run personal agents owned by your account, and can manage those agents’ long-term memory, skill file space, personal workspace files, and account-level Agent Brain skills as described below. They can also read and post in your team rooms as you (see CREAO CLI team rooms below). Super Agent (
/v1/super-agent/*) and product-profile (GET/PUT /v1/product-profile) routes are available only to allowlisted accounts. Key rows are deleted when your account is deleted - CREAO CLI agent data — when you create or edit personal agents through CREAO CLI, CREAO stores the agent definition in the same encrypted agent resource store used by the main CREAO app, including agent name, description, version, skill instructions, app configuration, dashboard template, write-autonomy setting, release note, and timestamps. These agent rows are deleted when your account is deleted
- CREAO CLI agent memory — when you read, overwrite, or clear a personal agent’s long-term memory through CREAO CLI (
/v1/agents/{agent_id}/memory), CREAO retrieves or updates reflection playbooks for that agent via CREAO’s reflection service. Overwrite and clear operations send playbook content and status to that service; read responses return playbook identifiers, names, content, triggers, rationales, statuses, and timestamps. CREAO does not store a separate CREAO CLI copy of these playbooks beyond ordinary request logging described below; source playbooks remain in the reflection service and are purged when the underlying agent is deleted - CREAO CLI agent files — when you list, download, or delete files in a personal agent’s skill file space through CREAO CLI (
/v1/agents/{agent_id}/files), CREAO uses the same encrypted file registry and object storage used by the main CREAO app for that agent’s skill folder (including auto-staged skill files such asSKILL.md). List and download responses include file identifiers, names, MIME types, sizes, content hashes, timestamps, and short-lived presigned download URLs. Delete removes the registry row and the stored object. These files are deleted when your account is deleted, or when you delete them via the API or the product UI - CREAO CLI workspace files — when you upload, list, download, or delete files in a personal workspace through CREAO CLI (
/v1/workspaces/{workspace_id}/files), CREAO uses the same encrypted file registry and object storage as the main CREAO app’s workspace Files panel (workspace-root uploads only; not thread artifacts or organization shared files). Upload stores the file bytes, a display name, MIME type, size, and content hash. List and download responses include file identifiers, names, MIME types, sizes, content hashes, timestamps, and short-lived presigned download URLs. Delete removes the registry row and the stored object. These files are deleted when your account is deleted, or when you delete them via the API or the product UI. Passing the sameworkspace_idon an async or realtime run binds that conversation to the workspace so the agent can read those uploads; file contents may then be sent to the selected LLM provider through the same channel as files uploaded in the web Files panel - CREAO CLI run data — when you start async or realtime agent runs through CREAO CLI, CREAO stores the request identifier, agent/conversation/thread/session identifiers, optional bound workspace identifier, run mode, status, timing, input JSON payload, result JSON payload, error metadata when a run fails, credits used, and a per-model usage breakdown (model identifier plus numeric counters such as tokens, generated-image count, or duration). Realtime responses use a public NDJSON render protocol sent to the Account API key holder: assistant text, thinking deltas, search queries and result cards, todo lists, opaque tool start/end (without tool input or output), and artifact announcements. The persisted result JSON may include a compact
blockssnapshot; thinking text is not stored in that snapshot. A completed-run GET with an Account API key (cr_sk_) may hydrate thinkingcontentonto those markers from the owned assistant message. List and webhook payloads stay marker-only. Unlike the input and result payloads, that usage breakdown is also copied into CREAO’s internal analytics warehouse. A first run of a named agent (noconversation_id) assembles the same run prompt used by the main CREAO app’s agent-detail Run action: the stored agent name, skill instructions, and app configuration are combined with your input as the user request before the model is called. Follow-up turns on an existing conversation send your new input without re-assembling that full prompt. Super Agent runs (POST /v1/super-agent/runs,POST /v1/super-agent/realtime/runs) usechat_asyncorchat_realtimewith noagent_idand do not assemble a named-agent prompt; they are stored with the same run-row shape and are listed only through/v1/super-agent/runs. When CREAO’s reflection analytics/retrieval is enabled, named-agent async and realtime runs use the same reflection path as chat: your current query text may be used by CREAO’s reflection search to retrieve relevant profiles/playbooks, and user turns and selected assistant final-turn summaries (with compact tool metadata) may be processed by CREAO’s reflection service for quality monitoring. If you configure a webhook URL, CREAO also stores that URL and delivery timestamp and may POST the run output to the developer-configured endpoint. Run rows are deleted when your account is deleted - CREAO CLI request logs — when an authenticated Account API key request reaches a
/v1/*CREAO CLI route after authentication and account rate-limit checks, CREAO stores one request-log row with your account identifier, Account API key row identifier, HTTP method, route pattern and path, handler name, status or error code, created or fetched run identifiers where applicable, agent and conversation identifiers where applicable, timing, request and response byte counts, and credited usage when the call creates a billable run. CREAO does not store request payloads, response payloads, headers, raw API keys, or tokens in this request log. Rows are deleted when your account is deleted - CREAO CLI account usage — when you call
GET /v1/account/usagewith an Account API key (cr_sk_), CREAO returns your own remaining platform-wallet credits and a rolling 24-hour sum of CREAO CLI request count and reported credit spend. The response is scoped to the key owner. It does not include other accounts’ balances, internal credit units, or the billing deduction ledger. - CREAO CLI product profile — when an allowlisted account reads or replaces the once-per-account product profile through
GET/PUT /v1/product-profile, CREAO stores optional persona (up to 4,000 characters) and brand context (up to 8,000 characters). Non-empty fields are sent to the selected LLM provider on each Super Agent turn as written, so the Super Agent can follow that voice. An empty or missing profile uses the default CREAO Super Agent voice. The row is hard-deleted when your account is deleted. Internal analytics warehouse views exclude persona and brand-context text - CREAO CLI Super Agent runs — when an allowlisted account starts a Super Agent run through
/v1/super-agent/runsor/v1/super-agent/realtime/runs, CREAO uses the same Super Agent chat runtime asagent.creao.ai/chat(connectors and most skills). These runs do not load CREAO long-term memory, and they cannot create or modify personal agents. CREAO stores the same run and request-log fields as other CREAO CLI runs (agent_idis empty; Super Agent conversations cannot be mixed with Agent Runs). Input and output may be sent to the same LLM providers as chat. Realtime Super Agent streams use the same public NDJSON render protocol as Agent Runs, including thinking, search, and todo cards that leave the host toward the API key holder. A Super Agent GET may also return thinkingcontenton those markers after the run completes. Super Agent run rows are deleted when your account is deleted - CREAO CLI team rooms — where team rooms are enabled for your team, an Account API key acts as you in team rooms through
/v1/rooms: it can list the rooms you have joined, read any room you can read in the app (as a team owner or manager, that includes private rooms you have not joined), see members and agent status, follow a room’s new messages live, and post messages. A post made with a key is stored like any message you send in the room, under your name and marked as sent through the API, together with the optional idempotency key (client_msg_id) you supply; mentions in it notify people and, unless the request setstrigger_agentsto false, start the mentioned agents, which then work exactly as when you mention them in the app. CREAO stores no copy of what a key reads, and the live room stream is not stored. Request-log rows for these calls follow the CREAO CLI request logs entry below. Anyone or anything you give your key to, including an agent you let read it from your Secrets, can read your rooms and post as you until you revoke the key. When an agent uses your key, the room content it reads is sent to that agent’s LLM provider like any other content it works with - CREAO CLI Super Agent allowlist — CREAO may store an allowlist row with your account identifier, the account email, and the administrator who added the account, so Super Agent and product-profile routes can be gated. The row is hard-deleted when your account is deleted or when an administrator removes the account from the allowlist
- Conversation data — messages, files, and artifacts you create during chat sessions. On iOS and Android, URLs, text, and files shared into CREAO from other apps through the system Share sheet are treated as chat attachments and retained under the same conversation data policy. When CREAO’s reflection analytics/retrieval is enabled, user turns and selected assistant final-turn summaries (with compact tool metadata) may be processed by CREAO’s reflection service for quality monitoring, and your current query text may be used by CREAO’s reflection search to retrieve relevant profiles/playbooks
- Cloned voice data — when the voice-cloning feature is enabled and you explicitly enroll a voice, CREAO sends the reference audio to MiniMax to create a provider-hosted voice profile. CREAO stores the display name you choose, an internal profile identifier, the provider voice identifier, consent timestamp/version, lifecycle timestamps, and a generated MP3 preview. CREAO does not retain the reference recording in its own object storage and requests deletion of MiniMax’s uploaded reference file after activation. You must own the voice or have the speaker’s permission to clone and use it. Voice recordings and derived profiles can identify a speaker; CREAO uses this feature to synthesize speech, not to verify identity. Enrollment requires an explicit consent attestation, and CREAO records its version and timestamp
- Usage data — credit consumption, feature usage, acquisition attribution (UTM parameters, Google click IDs (
gclid,gbraid, andwbraid), Meta click ID (fbclid), Reddit click ID (rdt_cid), and Impact affiliate click ID (IM_REF), referring site, landing path, owner-derived affiliate or referral attribution from public shared-thread and agent-install pages, and KOL-defined affiliate sub-tracking parameters such asmediaorsub_id), the type of client you signed up and signed in from (native iOS or Android app, mobile browser, desktop browser, or desktop app) together with the app version when you use one of the native apps, session metadata for billing, analytics, and product improvement. When Google Analytics or Google Ads conversion measurement is enabled, CREAO also sends your CREAO user identifier (after sign-in), first-touch campaign/referrer parameters, Google click ID (gclid), the browser GA4 client identifier derived from the_gacookie and, on agent run requests where a live session is active, the session identifier derived from the_ga_<container>cookie, conversion events, and the signed-in email address for sign-up, login, and purchase enhanced-conversion matching (the email is also set on the Google tag when a signed-in session is restored, so later conversions in that session can be matched); the Google tag hashes email data before Google receives it for matching. When Meta Pixel or Meta Conversions API measurement is enabled, CREAO may send hashed email, hashed CREAO user identifier, IP address, user agent, Meta browser/click identifiers (_fbp,_fbc), and sign-up or purchase conversion events to Meta for attribution matching. When Reddit Pixel or Reddit Conversions API measurement is enabled, CREAO may send hashed email, a namespaced hash of the CREAO user identifier, IP address, user agent, the Reddit browser identifier (_rdt_uuid), Reddit click ID (rdt_cid), and page-visit, pricing-view, sign-up, or purchase conversion events to Reddit for attribution matching; no conversation content is sent for these analytics events - Billing coupon data — when a one-time subscription coupon is created or redeemed, CREAO stores the coupon code, campaign type, discount terms, optional internal distributor note, Stripe coupon/promotion identifiers, and admin/redeemer attribution needed to prevent reuse, reconcile checkout, support customers, and audit discount issuance. Redeemer email is visible only to CREAO admins and is removed if the redeemer’s account is deleted
- Billing address and tax data — when sales-tax calculation is enabled for your Stripe checkout (today: the CREAO platform Stripe account in Hong Kong), Stripe Checkout asks for your full billing address and saves it on your Stripe customer record to calculate sales tax or VAT where CREAO is registered to collect it. Stripe collects, stores and uses it under its own terms; CREAO does not keep a copy of the address in its own database. Tax amounts appear on the Stripe invoice and receipt
- Affiliate and referral billing data — when you join or use an affiliate referral campaign, CREAO may store referral handle attribution, KOL account identifiers, configurable commission rates, invitee reward credit grants, and related credit ledger metadata so rewards, revenue share, and payouts can be calculated and audited. For Impact.com affiliate campaigns, CREAO may send eligible sign-up, subscription, and credit-purchase conversion records to Impact.com for partner attribution and reconciliation; these records may include SHA1-hashed email, CREAO user ID, Impact click ID, order ID, conversion timestamp, event type, subscription or purchase amount, and promo code
- Memory data — your user-scoped Agent Brain profile, context files and reusable skills, curated from conversations when enabled and available from Settings → Personalization. Historical database-memory records remain available for reading and deletion, but new legacy records and Dream profiles are no longer generated. Agent-app playbooks are a separate store described below
- Login geolocation — a location estimate derived from your IP address is recorded with each login event. A country code (ISO 3166 alpha-2, from Cloudflare) is used for analytics, abuse detection, and billing routing. CREAO may also derive and store a coarse city/region estimate — from Cloudflare’s edge geolocation of your IP on live logins, or an offline geolocation database applied to the stored IP for historical (backfilled) estimates — used for regional product analytics and to segment location-relevant CREAO communications (see Location-based communications below). When derived, this estimate is approximate — it reflects your network’s location, not a precise position, and can be wrong (for example with VPNs or mobile carriers). No GPS or precise-location data is collected, and only the coarse city/region estimate — never the raw IP — is shared with our marketing-automation subprocessor (customer.io) for this purpose, and only for users outside the EU/EEA/UK (see Location-based communications below)
- Sign-up credit check — the free credits a new account receives may be held until an automated check finds no sign of an account farm. The check compares the account’s existing login signals (device fingerprint, device identifier, IP address when no fingerprint is present) and email alias with other accounts, and looks at whether the account was placed in a suspicious-account group for review. Daily credits stay available meanwhile. Credits held for a flagged account are released when the review clears it, when the account upgrades to a paid plan, or when an admin restores it. Only the hold’s status, amount and the names of any matched checks are stored, and they are deleted with your account
- Location-based communications — CREAO may use the coarse city/region estimate described above to segment marketing and lifecycle emails by area (for example, an event or announcement relevant to your metro). This applies to users outside the EU/EEA/UK: because CREAO does not yet operate a per-user consent mechanism for this purpose, users in the EU/EEA/UK are excluded from location-based marketing segmentation entirely, and their location estimate is not shared with our marketing-automation subprocessor for it. You can opt out of marketing emails at any time via the unsubscribe link or your notification settings
- Historical Dream profiles — previously generated summaries of preferences, working style and activity. Automatic and on-demand generation and the Dream tab are retired; retained records are not used for current memory injection
- Reflection playbooks — app-specific workflow rules inferred from agent-app interactions, available in the agent’s Playbook tab. Authorized app runs may retrieve relevant playbooks from the reflection service and send them to the selected model provider. Personal reflection-profile and user-playbook retrieval is retired; ordinary chats are not published to the reflection service
- Linked social profiles — when you connect an X (Twitter) or Discord account from the Rewards hub or Settings, CREAO stores the provider account ID, username, display name, and avatar URL so the UI can show which accounts you have linked. For Discord we also retain the OAuth access token so reward verification (CREAO server membership) can run without prompting you to re-authenticate. For X, the OAuth token is used only at link time to confirm account ownership — CREAO does not call back to X to read your follows, posts, or social graph. To prevent reward-farming via re-binding, an X or Discord identity that has been linked to a CREAO account is bound permanently to that account — it cannot be disconnected from the UI. As a security measure, linked profile data and stored OAuth tokens are also removed automatically whenever your authentication state is revoked (password reset, admin force-logout, account ban) — this prevents an attacker who briefly held a session cookie from leaving an attached account behind after the rightful owner regains control. They are otherwise removed only when you delete your CREAO account, at which point all linked profile data and stored OAuth tokens are deleted with it. You can still revoke CREAO’s access at any time from your provider’s settings (X → Connected apps, Discord → Authorized apps), which invalidates the stored token immediately
- Campaign participation data — if you join a CREAO campaign or challenge, CREAO may store campaign-specific enrollment state, eligibility checks, public leaderboard identity, and setup metadata. For the Agent Trading Campaign, this includes Season 1 submitted WEEX email/UID, Season 2 submitted debot email and Robinhood Chain wallet address, the linked X profile used as your public leaderboard identity (
x_username,x_provider_account_id, display name, and avatar), Discord link and CREAO Discord server membership requirements where applicable, your selected CREAO agent app ID, your user-chosen public leaderboard agent name/slug, Agent API Trigger setup metadata, readiness/freeze audit hashes, and disqualification/finalization status. For the optional Season 2 Kite Agentic Wallet side event, CREAO may also store your cloned Kite agent app ID, which Passport skill paths were installed on your CREAO account (authenticate-user,kite-passport,wallet-send), the Base-chain wallet address you confirm, wallet/deposit/transaction verification timestamps, a verified Base deposit balance (USDC), a submitted Base transaction hash, side-event completion status used for the leaderboard Kite badge and score bonus, and reward-credit grant status/timestamps for enrollment-lock and Kite-completion bonuses. Total CREAO credits consumed may be used to determine prize eligibility; public campaign pages may show eligibility status or prize-claim rank, while exact credit totals are visible only to you and CREAO admins - Hackathon signup data — if you create a CREAO account through a hackathon signup link while that event’s offer is open, CREAO records which hackathon the account signed up through, the complimentary plan granted (one month of Pro Plus), when that plan period ends, and when the record was created (
hackathon_signups). It is used to apply the offer once per account, support you, and measure event sign-ups, and it is deleted when your account is deleted - Campaign financial performance data — for trading challenges, CREAO may use the WEEX API credentials you configure in CREAO Secrets to request demo-account balance and order data from WEEX during a WEEX-backed campaign. For Robinhood/debot-backed campaigns, CREAO may check your submitted Robinhood Chain wallet balance at enrollment, receive Debot monitor callbacks on a CREAO community Agent webhook wrapper (which forces phase-based dry-run when appropriate, then forwards to your Platform Agent app), and import wallet equity, PnL, trade count, trade history, and funding history from debot or the Robinhood chain for ranking and audit. CREAO stores leaderboard snapshots such as USDT or ETH equity, PnL, and trade count for ranking, audit, and results pages, and may persist size-bounded Debot callback payloads (plus a payload hash, event id, dry-run flag, phase, HTTP status, and dispatch outcome) in
s2_trading_challenge_api_invokesfor My Entry history, idempotent retries, and admin dry-run testing. For the Season 2 Kite Agentic Wallet side event, CREAO may query a Base-chain RPC endpoint with your confirmed Base wallet address and submitted transaction hash to verify deposit balance and that the transaction succeeded and originated from that wallet; CREAO stores the resulting verification metadata (not a private key) ins2_trading_challenge_kite_side_events. CREAO does not store your raw WEEX API key, secret, passphrase, or debot developer API credentials (DEBOT_API_KEY/DEBOT_API_SECRET) in the campaign database, and never collects a wallet private key for debot-backed campaigns or for the Kite side event. During the audit phase, authorized campaign admins may export campaign credentials from the secrets store to verify trading history; these exports are logged as administrative actions - Scheduled-run result delivery — when you enable “Email me a summary” on a scheduled agent app, CREAO sends a summary email after each run. We store the email delivery record in
schedule_email_deliveries(schedule ID, run status, delivery outcome, and timestamp). These records are deleted automatically after 30 days by a nightly cron. The delivery setting is off by default and can be changed at any time from the schedule settings - Scheduled-run reconnect warnings — when a scheduled agent run cannot use one of your connectors because the connection’s authorization has failed, CREAO records which connection it was so it can ask you to reconnect it: the connection’s internal ID, the provider (for example Google Sheets), how the failure was detected, and the time of the run. This is stored with the run (
app_sessions.warnings) and its schedule (app_schedules.last_run_warnings), plus one record per failure period inconnector_warning_episodes(your user ID, the connection ID and provider, the last run and schedule IDs, and when the failure was first and last seen and when it was resolved). No connector account name, email address, third-party account ID, token or connector content is stored, and these warnings are shown only to you, not to other members of a shared agent or to team owners. See Data Retention for how long they are kept - In-app notifications — when an agent run you started reaches a notifiable state (chat and workflow completions, awaiting your input, run failures, a workflow approval pending, running out of credits, an action awaiting approval, or an organization invite), CREAO stores an in-app notification inbox row in
notifications. Each row holds the notification reason, the related thread / agent-app / session identifiers, a stable i18n key plus structured parameters used to render the localized message, and its read state. To render the inbox, the row also stores the related names: the chat thread’s title (which for an ordinary chat thread defaults to the start of your first message, truncated to 100 characters), agent app name, organization name, and for team rooms the room name and the sender’s name. No message text or generated output is stored. In-app notifications always show these names; the Settings → General “Show names in push notifications” toggle, off by default, controls only whether they appear in the push body sent to Apple (see the Apple/APNs row below). Repeated team-room messages are merged into one row per room until you read it. A sender’s name in your notification is a copy of the display name shown to you at the time; it stays in your notification rows (until they are deleted with your account) even if the sender later deletes theirs. Account-level and per-schedule controls let you decide whether completion notifications are eligible for delivery. Notification rows are deleted when your account is deleted - Event bus records — when a chat run or a scheduled agent run fails, or a timer of one of your agent triggers fires, CREAO stores an event in
events(the event type, a subject such as the thread or run session identifier, your user id as the owner, and the actor that caused it), a small payload inevent_payloadsholding only identifiers (thread, run, agent app, session and schedule ids, plus the run’s notification preference) — never message text or generated output — except that a fired agent-trigger timer’s event also carries that timer’s note and payload, and an email that fires an Outlook agent trigger carries that email’s sender, recipients, subject, first 255 characters, flags and attachment names and sizes (see Agent triggers below), a routing checkpoint inevent_routing, and one delivery record per matching subscription inevent_deliveries. Your event subscriptions (which event types you receive, stored inevent_subscriptions) hold your user id and the subscription state. These rows drive the in-app notification described above and the agent triggers described below, and nothing else. Events and everything that hangs off them are deleted after 30 days, and all event-bus rows are deleted when your account is deleted - Agent triggers — when you (or an agent acting on your request) set up a trigger that runs one of your agents from a timer or from new emails in your connected Outlook mailbox, CREAO stores the trigger in
agent_triggers(your user id, the organization of the target agent, the agent, the trigger’s name and kind, the constants you gave the decision script asparams, and where the script lives), the decision script itself as a small JavaScript file in your private storage (never in a database column and never in the analytics warehouse), each timer inagent_trigger_timers(the item it belongs to, its note and payload, when it fires), and one record per fired event inagent_trigger_runs(the script’s decision, its reason, the validated inputs it chose for the run, and the run started). For an Outlook email trigger, CREAO also stores inconnector_triggersyour user id and team, the Outlook connection it watches, the folders it watches, the sender addresses or domains you allowed, an encrypted key used to verify deliveries, and counts of filtered and over-limit emails. Our connector provider Pipedream watches the mailbox and sends each new email to CREAO; CREAO keeps only the sender, recipients, subject, first 255 characters, flags and attachment names and sizes, and never stores the email body or attachment contents. An email from a sender on your list starts the agent, except that the first email from each address or domain on the list waits for your approval once; emails from anyone else are discarded without being stored. If you allowed no senders, no email starts a run until you approve it, and the request expires after 24 hours. While a run waits, CREAO sends you an approval notification that names the trigger, the agent and the sender’s address; on a phone’s lock screen those names are hidden unless you have chosen to show names in notifications. Approving or denying is recorded on the run. The script runs in an isolated interpreter with no network or file access and sees only the event, yourparams, and the target agent’s input fields. Only you can see or change your triggers; the runs they start appear in the agent’s run list like any run you start.params, timer notes and payloads, run reasons and inputs are excluded from the analytics warehouse. See Data Retention for how long these are kept - Push device registration — if you enable push notifications on the CREAO mobile app, CREAO stores one row per device in
push_devicesso it can deliver notifications to that device. Each row holds the device push token (an opaque delivery credential issued by the platform’s push service, treated as a secret — never displayed back to you and never written to logs in raw form), the device platform, the delivery environment, the app version and device locale captured at registration (used to localize push copy), and lifecycle timestamps (first registered, last seen, and a disabled marker). No message content is stored. You can remove a device at any time by disabling push notifications or signing out; device rows are hard-deleted when your account is deleted - iOS in-app consent acknowledgements — on the iOS and iPadOS App Store app only, CREAO stores device-local flags in browser local storage when you accept the Privacy and Personal Information Protection Agreement (before sign-in) and when you acknowledge the third-party AI processing disclosure (after sign-in, keyed to your account on that device). These flags record only that you agreed — not message content — and are not synced to CREAO servers. They are cleared when you uninstall the app or clear the app’s site data
- Team-collaboration attribution — when you and other members work in the same organization, CREAO stores the user identifier of the team member who sent each message, uploaded each file, or performed each tracked action so collaborators can see each other’s display name and email next to those entries (in chat, shared files, and the organization activity log) and know who did what. This attribution is visible only to other members of the same organization — never to users outside the org or to anonymous visitors of a shared link. Any member of the organization can PUBLISH an agent they created to the whole organization, making its configuration visible and runnable by every other member — publishing is treated as ordinary collaboration and is not restricted to owners or admins. (Connecting a new data source is restricted: that stays with organization owners and admins.) For a shared agent app, sharing covers only the agent’s configuration: each member’s own runs, generated outputs, and pending action approvals are private to that member and are not visible to other members (including the agent’s creator). CREAO does show members with access to a shared agent aggregate, non-identifying usage counts — for example the agent’s total run count and how many runs were by members other than the creator — derived from run records without exposing any individual member’s runs, prompts, outputs, or identity. Publishing, unpublishing, changing a shared object’s team role, and co-editing saves are attributed team activity, visible to the organization with the acting member’s name like the other tracked actions above. Any member of the organization can schedule a shared agent app to run on a recurring basis; a schedule a member creates is owned by and billed to that member, and its runs and outputs are private to them under the same per-member rule. Editing, pausing, or deleting a schedule is limited to the member who created that schedule — not the agent’s creator or the organization owner. All members can view the agent’s schedules read-only, including each schedule’s configuration and the name and email of the member who created it. Per-agent access delegation — an agent’s owner (its creator) or an organization owner/admin can grant another member of the same organization a role on a specific agent: manager (edit and delete the agent’s configuration), editor (edit its configuration, without delete or grant rights), or viewer (run it). When publishing, the creator also picks the default role every organization member receives on that shared agent — viewer or editor. CREAO stores one row per grant recording the agent, the member granted, the role, and who granted it, so the access list can be reviewed and audited. A grant can only be given to a current member of that organization, and it stops conferring access the moment that person leaves the organization — their grants are also purged during removal. Organization owners and admins hold full permission over every agent in their organization regardless of who created it. Converting a shared agent back to personal withdraws all delegated access
- Team rooms and scheduled room messages — in a team room, CREAO stores the messages, files, mentions and membership of the room so its members (and the organization’s owners and admins) can read and search them. A room member can schedule a message to be posted to the room later, once or on a recurring cadence; CREAO stores the scheduled message’s text, its schedule and timezone, and who created it, and posts it as that member at each scheduled time, marked as scheduled in the room. A room agent can set up such a schedule only when one member asks it to directly, and the message then posts as that member. In the same way, the room assistant can create a saved agent only when one member asks it to directly: the agent is created in that member’s own account and is private to them, it can contain what was said in the room, and the room shows a note naming the agent and the member it was created for. Only the member who created a scheduled message can edit it; they and the room’s managers can pause or delete it. Scheduled message text is not exported to our analytics warehouse. Room members can also save shortcuts, named message templates sent by typing
/name: CREAO stores each shortcut’s name, description and message text, who created it and who last edited it, and, when an agent made it, which agent did so for which member. Any member who can post in the room can create, edit or delete any shortcut, and every change posts a message in the room naming who made it. A message sent with a shortcut is posted as the member who sent it and records the shortcut’s id and name at the time. A shortcut is kept until a room member deletes it; an archived room keeps its shortcuts. Its text and description are not exported to our analytics warehouse (see Data Retention). A room’s agents can be given access to a team shared folder: an agent a member added uses that member’s own access, and the room assistant uses the access of the room manager who chose the folder; either reaches only files that person can open inside the folder, and anyone in the room can read those files through the agent. While the room assistant has a folder it may edit, each file posted in the room is also saved as a team file in the assistant’s own folder inside it, where that folder’s sharing applies; deleting the message deletes that copy unless someone has since moved or edited it. - Organization invite emails — when an organization admin invites a new member, CREAO stores the invitee’s email address in
org_invitesto deliver the invitation and track its status (pending, accepted, or revoked). The invitee may or may not have an existing CREAO account. If the invitee signs up with that email, the invite is accepted automatically and they join the organization as an organization-only account (no personal workspace). Invites created under the retired per-seat team plan may also carry a link to the seat they reserved (seat_id); CREAO no longer reserves seats or writes that link. Invite records are deleted when the invitation is revoked by an admin, when the organization is deleted (FK cascade), or when the invite expires. Accepted invites retain the email for audit purposes until the organization is deleted - Team logo — an organization owner or manager can upload one image (PNG, JPEG, WebP, or SVG, up to 5 MB) to represent the team. CREAO stores the image bytes as a single object in its private S3 upload bucket under an
organizations/{organization id}/branding/key whose final segment is random and server-generated, and keeps that key on the organization record (organizations.logo_key). The logo is shown to every member of that organization (home screen, team switcher, team settings) and is delivered through the same unguessable-key image CDN or short-lived presigned URL pattern as other stored images; it is never listed publicly and contains no data about an individual. Replacing the logo writes a new object and deletes the previous one; removing it clears the key and deletes the object. The logo is deleted with the organization - Action approvals — when an agent or chat session proposes a guarded write through a connector (email, social media, messaging, etc.), CREAO stores the proposed action payload (for example tweet text, email subject, or message content), validation results, approval status, approver/rejector audit metadata, and apply result so you can review, approve, reject, retry, and audit external actions. This applies to both Agent App sessions and regular chat threads
- Workflow orchestration data — when a dynamic workflow is staged (via the
/workflowcommand, or when the agent proposes one in ordinary chat) and you approve it, CREAO stores approved workflow definitions (name, description, and JSON task spec), workflow run and task execution records (status, task prompts, summaries, parent-thread artifact copies, and per-task cost), and append-only progress events so the host can schedule, pause, resume, cancel, retry, and audit the workflow - Slide deck generation data — when you use the
/slidecommand, the agent authors the deck itself as a set of HTML files (slide markup, theme stylesheets, and any images it generates or you provide). CREAO validates and sanitizes that bundle server-side and then stores it: each accepted version is written to encrypted object storage as a content-addressed archive, and a database record keeps the deck’s title, its version number, and a reference to that archive. Asking the agent to change a deck creates a new version rather than replacing the old one, and earlier versions and their archives are retained. The rendered PDF, PPTX, per-slide images, and HTML preview are saved to your thread’s encrypted file storage and retained under the same policy as other generated files and conversation data. Deleting a thread does not remove that thread’s stored deck versions or their archives; deleting your account removes them, along with the rendered outputs, within 30 days — see Data Retention - Agent Store engagement — when you interact with agents in the public Agent Store, CREAO stores your likes, bookmarks, shares, written reviews (with star rating), and view impressions. View impressions include your account ID when you are signed in and a SHA-256 hash of your IP address (truncated to 16 hex chars) for deduplication only — no raw IP, user agent, or precise geolocation is stored.
- Discover Skills install activity — when you install a community-recommended skill from Discover Skills, CREAO records the Discover Skills entry and your user ID so we can keep install counts accurate and avoid double-counting repeat installs
- Discover agent run activity — when you run an ordinary agent copied from a Discover/store listing in chat, CREAO records your user ID, the agent and original listing IDs, run and thread identifiers, version identifiers when known, start and end times, the observed outcome, and whether the run began through Discover Try or a manual action when known. A Try event identifier may link the run to your Discover interaction. We use this metadata to understand completion and repeat use and improve Discover. These records do not include your prompts, responses, or generated file contents
- Suggested agent execution activity — for agents built from personalized suggestions, CREAO records the agent, suggestion owner and executing account identifiers, execution/thread/schedule identifiers, trigger type, start/end times and observed outcome for ordinary web and scheduled runs. We use these records to understand completion and repeat use. They contain no prompts, responses, memory contents or generated outputs.
- Account-level Agent Brain skills — when you install or author a custom skill on
agent.creao.ai/skillsor through CREAO CLI (/v1/skills), CREAO stores the skill name, description, SKILL.md content, optional supporting files, source URL, tags, and timestamps incustom_skills. Which skills are enabled for your account is stored inusers.builder_options.enabledSkillIds. Disabling a skill removes it from that enabled list and unmounts its files from the sandbox; it does not delete the skill. If you belong to an organization, you can publish a custom skill to your team: its name, description, SKILL.md content, and supporting files become visible to the organization’s members, who can enable it for their own runs (enabling copies the skill’s files into that member’s private workspace storage) and, when holding the editor role, edit it. Every save is stored as a version attributed to its author so the history can be reviewed and restored, and members with access see the aggregate number of members who have enabled the skill. Unpublishing withdraws access and removes the copies from members’ storage. Custom-skill rows, their version history, and the enablement list are deleted when your account is deleted - LLM transaction forensics — when the super agent calls a large language model on your behalf, CREAO stores per-request invocation metadata for billing accuracy and abuse prevention: source IP address (from
cf-connecting-ip), user agent, country code, Cloudflare edge-location code (cf.colo), provider name and request path, token counts, cache status, JWT issued-at and age, upstream response identifier, run-history thread identifier (internal UUID), and the per-request cost in USD. This data is written tocredit_deduction_logs(one row per LLM call) and is retained alongside other billing records. Rows are also written for model calls CREAO makes for you but does not charge to your account (for example memory extraction, embeddings, and follow-up suggestions); those rows carry the same metadata and cost but zero credits, and exist so every call the provider invoices can be reconciled. It is used to spot stolen sandbox credentials, replay attacks, and runaway agent loops, and to reconcile our spend against upstream provider invoices - Usage-cap counters — to enforce the per-plan limits on how much you can spend and how many images or videos you can generate over rolling windows (1 hour to 30 days), CREAO keeps a small hourly tally per account in
user_usage_hourly: your user identifier, which kind of usage it counts (overall credit spend, image generations, or video generations), the UTC hour, and a running total for that hour. It is derived from charges already recorded above and holds no per-request detail — no prompt or generated content, no IP address, user agent, model identifier, or thread identifier. Rows older than 31 days are deleted hourly by a cron job, and all rows for an account are removed when the account is deleted - Connected-database configuration — for enterprise organizations that connect their own database (Bring Your Own Data), CREAO stores the encrypted connection credentials and the database/schema names the workspace admin chose to expose. Credentials are encrypted under a dedicated key separate from the one used for user-uploaded secrets so the two rotation lifecycles stay independent. Connection records are hard-deleted immediately when an admin disconnects the source and cascade on organization deletion
- Connected-cloud configuration — when you connect your own AWS account (Bring Your Own Cloud) so the agent can read observability data or provision infrastructure on your behalf, CREAO stores non-secret references to the connection: the cloud provider, a display name, the AWS account ID, the cross-account IAM role ARN you paste back after deploying our CloudFormation stack, the region the tools run against, and the grant tier (
readonlyfor debugging ordeployfor provisioning). The only secret in this record is a per-connection ExternalId, which CREAO generates and stores encrypted (AES-256-GCM, under a dedicated key separate from other secrets). No long-lived cloud credentials — no access keys, secrets, or static tokens — are ever stored. Access uses short-lived AWS STS credentials minted on demand via AssumeRole with the ExternalId; those credentials are held only in-process on the host that reads your account and never enter the agent sandbox - Account deletion requests — when you ask to delete your CREAO account, CREAO records the request and how it was handled: its status and timestamps, the IP address it was made from, an email and name snapshot captured at the time of the request, any reason code(s) you optionally select and free-text detail you optionally type when asked why you’re leaving, and any notes an administrator adds while actioning it. This record is stored separately from your account so it can serve as evidence that the request was received and carried out. See Data Retention for how long it is kept
- Rate-limit abuse events — when a request is rejected for exceeding a rate limit (HTTP 429), CREAO records a sampled event used to detect scans and brute-force abuse: the time, the endpoint path and HTTP method, the source IP address, an allowlist of non-sensitive request headers (user agent, referer, origin, forwarded-for, accept-language), the limiter bucket, and a size-capped, secret-redacted excerpt of the request body. Body capture is skipped entirely for authentication, billing, credit, secret, token, payment, and login routes, and recording is sampled to at most one event per actor per endpoint per minute. This is written to
rate_limit_violations. See Data Retention for how long it is kept - Job applications (CREAO Careers) — when you apply for a role on
careers.creao.ai, CREAO collects what the application form asks for: your name, email address, any links you supply (portfolio, GitHub, LinkedIn), your answers to the role’s free-text questions, and — if you attach one — your CV/resume file. The file itself is stored in CREAO’s private S3 upload bucket under acareers/applications/key derived from a random application identifier; CREAO also records its original filename, MIME type, size, and a content hash (used to recognise the same CV submitted to more than one role). If you were signed in to a CREAO account when you applied, the application is linked to that account ID so you can see your own submissions under My Applications; applying does not require an account. Applications are readable only by CREAO recruiting staff on an allowlisted internal admin surface, and CVs are never exposed on a public URL. Staff may also record an application’s hiring status and interview round, and may link two applications that share a candidate’s email addresses so duplicate submissions are recognised as one person - Job-alert subscriptions (CREAO Careers) — if you ask to be notified about new roles, CREAO stores the email address you give, the scope you chose (this role, this category, or all new roles), and the job or category the request came from, so it can email you when a matching role is published. This is a standalone subscription record — it does not require or create a CREAO account. Ask us at support@creao.ai to remove it
- Paired devices (CREAO Connect) — when you pair your own computer or server with CREAO so the agent can run local capabilities on it, CREAO stores a device row: a user-chosen device name, platform, a hashed/preview form of the device’s access token, the merged list of capabilities (and MCP tool schemas) the device advertises, status (active/revoked), pause (“do not disturb”) state, and presence timestamps (last seen, last graceful disconnect). Each successful connect also records the source IP address and a derived geolocation string, used for new-location/takeover detection on the pairing UI. A capability task is stored durably so it can continue without keeping a chat request open: the task record contains device/user/thread identifiers, capability name, status, progress, deadlines and timestamps, while a separate cloud-only payload record contains the arguments sent to the device and its bounded result. Raw arguments and results are excluded from CREAO’s analytics warehouse; only bounded task metadata is mirrored there. When remote approval is available for your account, a consent prompt your device raises for a task is also mirrored to CREAO so you can answer it on the web or the phone app: the capability, the target tool or worker, the caller, and the argument preview the Mac prompt shows (up to 500 characters, which can include a shell command, file path or other text the agent supplied). Mirrored prompts and their answers are stored in the same cloud-only payload record and are likewise excluded from the analytics warehouse. The “approval needed” push and in-app notification names the device and the tool or worker being asked about, never the argument preview, and its inbox row is deleted once the prompt is answered, expires or is cancelled. When a device capability result is too large to return inline, CREAO temporarily stores the result in an encrypted, per-device-scoped S3 object (
device_attachmentsbinding row) addressed by a short-lived signed URL. That URL is resolved by the agent’s own sandbox process, which downloads the bytes to a temporary path inside that sandbox and shows the model only the local file path — the signed URL is never placed in the model’s context, including in error messages. The same channel runs in reverse when the agent sends a file to your device: the bytes are uploaded from the agent’s sandbox to a per-device-scoped S3 object under a separateuploads/prefix, and the capability task carries only that object’s identifier, never the file contents. Your device exchanges that identifier for a short-lived signed URL and downloads the bytes itself, and only when the task it belongs to actually refers to that identifier. Device, task, payload and attachment-binding rows are deleted when your account is deleted, or immediately when you revoke the device; the stored attachment object itself also expires automatically (see Data Retention). Separately, if you use the paste-to-configure flow for MCP servers in the desktop app, the setup text you paste is sent to Claude Haiku to be read — see AI & Model Usage for what that means and what is not kept When a task is delegated to a vision-capable Local Worker, such as the desktop operator that drives native Mac apps, screenshots of the app windows it works in are sent through CREAO’s gateway to the model provider for that task — see AI & Model Usage. Those screenshots can show anything visible in those windows, including private messages and documents. The worker’s session (its transcript and screenshots) is kept only on your Mac so the agent can continue it with a follow-up, which can resend recent screenshots; CREAO does not store it (see Data Retention). - Curated MCP install activity (CREAO Connect) — when you open a curated MCP server in Connect, CREAO stores a short-lived install handoff linked to your account, the catalog entry, its status, and (after redemption) the paired device that continued the install. CREAO also records the bounded outcome of each wizard step — entry and revision identifiers, device and account identifiers, step and outcome, duration, and closed failure fields such as a macOS permission kind, script exit code, or rejection code. These records contain no values you type into server settings and no free-text error messages. The handoff’s bearer-token hash is excluded from the analytics warehouse; the remaining handoff fields and the step outcomes are mirrored there to measure where curated installs stop. Source rows are removed when your account is deleted, and the warehouse mirror follows that source deletion through replication; otherwise the rows are eligible for the cleanup described in Data Retention
GDPR compliance
GDPR compliance
CREAO is designed with GDPR principles in mind: - Lawful basis — we
process data based on contractual necessity (to provide the service),
legitimate interest (to improve the product and measure advertising
performance where permitted), and consent where required for advertising
cookies, Google Ads enhanced conversions, Meta Pixel / Conversions API, and similar marketing measurement -
Data minimization — we collect only what is needed to deliver the service -
Right to access — you can export your data at any time -
Right to
deletion — you can delete your CREAO account and its associated data (
agent.creao.ai and CLI); a limited
audit record of the deletion request itself (request metadata, an email
snapshot, and any administrator handling notes) may be retained where required
for legal, compliance, and security purposes, as described in Data Retention.
A Developer Platform account, if you created one by signing in at developer.creao.ai, is a separate product account linked to that CREAO account. Deleting the CREAO account does not delete the Developer wallet or projects; request that erasure at privacy@creao.ai until a self-serve Developer close-account flow is available -
Right to
portability — conversation and file data can be exported in standard formats- Data processing — see the Subprocessors section below for a list of third
parties that process data on our behalf - International transfers — user
data is stored in the United States. For EU users, data transfers are governed
by Standard Contractual Clauses (SCCs) in accordance with GDPR Chapter V. Some
AI providers process generation requests outside the US (for example, BytePlus
seedance / seedream uses Singapore-region endpoints; Claude inference, Gemini
conversation, image-generation and text-to-speech requests, and Veo video
generation via Google Vertex AI may be processed in any Google Cloud
region worldwide when using Vertex’s
globalendpoint; and Fugu Ultra via Sakana AI may be processed by Sakana AI and the external LLM providers it orchestrates). Apple processes Sign in with Apple authentication on Apple’s own servers in the United States. Transfers to these processors are likewise governed by SCCs or equivalent transfer mechanisms where applicable. Apple publishes a Data Processing Addendum covering its developer APIs. Sakana’s public Fugu terms state that the service is provided outside the EEA, UK, and Switzerland, so EEA, UK, and Swiss use of Fugu Ultra requires confirmed DPA and transfer terms before the model is enabled for those regions - Data Processing Agreement — enterprise customers can request a DPA by contacting privacy@creao.ai
CCPA compliance
CCPA compliance
For California residents, CREAO provides: - Right to know — what personal
information we collect and how it is used - Right to delete — request
deletion of your personal information - Right to opt-out — we do not sell
personal information, and you may opt out of sharing for cross-context
behavioral advertising. CREAO honors browser Global Privacy Control signals by
disabling Google advertising user-data and personalization consent and by not
sending email match data for Google Ads enhanced conversions - Non-
discrimination — exercising your rights does not affect pricing or service
quality
In-app privacy notices (iOS App Store)
In-app privacy notices (iOS App Store)
The CREAO iOS and iPadOS app distributed via the Apple App Store shows
additional in-product privacy notices that do not appear on web, Android, or
the standalone desktop app:
- Before sign-in — you must review and accept CREAO’s Privacy and Personal Information Protection Agreement (a snapshot of the policy at https://creao.ai/terms/privacy, effective July 09, 2026) before creating an account or signing in. Acceptance is stored on the device in browser local storage and is not tied to a specific account.
- After sign-in, before AI features — you are shown a short disclosure that messages, files, and other content you provide may be sent to third-party AI providers (such as Anthropic and OpenAI) for processing, with a link to review Section 5.9 (AI Service Provider Data Sharing) of the in-app policy. You must acknowledge this disclosure before using AI features; acknowledgement is stored per account on the device in browser local storage.
- Settings → Privacy — you can reopen the full in-app policy at any time, including the AI Service Provider Data Sharing section.
AI & Model Usage
In an organization chat, the agent can work with team files within your permissions, including reading, editing, creating, and managing sharing. File contents and tool results enter the selected model provider’s context. To resolve sharing recipients, the agent can retrieve organization members’ names and email addresses; these results also enter model context. On the iOS and iPadOS App Store app, CREAO shows an explicit third-party AI processing disclosure after sign-in and blocks AI features until you acknowledge it. The disclosure states that messages, files, and other content you provide may be sent to third-party AI providers (such as Anthropic and OpenAI) for processing, and links to Section 5.9 (AI Service Provider Data Sharing) of the in-app Privacy and Personal Information Protection Agreement. This gate does not change which providers receive data or how it is used — it ensures you see that disclosure before your first AI request on iOS. Web, Android, and standalone desktop users accept equivalent terms through other product surfaces and do not see this additional gate. If a chat model declines a request, CREAO may retry it once using the model currently assigned to Lite. The retry sends conversation context and supported attachments to Lite’s serving providers, which may differ from the providers for your original selection. The default Lite route is described below. The chat shows a switch notice and selects Lite for follow-up messages in that chat; you can choose another model at any time. If you delegate a task to a vision-capable Local Worker on a paired Mac, screenshots of the native app windows the worker operates in (for example Mail, Notes or Messages) are sent through CREAO’s device model proxy to the Lite vision model’s serving providers, together with the task instructions. Delegate tasks only in apps whose visible content you are comfortable sending to those providers. When the agent asks a finished Local Worker a follow-up, the worker continues its earlier session, which is stored on your Mac: together with the new task, that session’s text history and up to its 4 most recent screenshots can be sent again to the Lite vision model’s serving providers. Worker sessions, including their screenshots, stay in the CREAO Connect state directory on your Mac and are not uploaded to CREAO; only the worker’s reply returns to the agent. Connect’s run retention removes them (see Data Retention).Most CREAO model-provider API paths do not use your data to train AI
models. Conversations and files sent to Anthropic, OpenAI, Google, MiniMax,
Z.AI, Moonshot AI, Thinking Machines, Fireworks AI, Meta, and BytePlus are
processed under API
agreements or
provider API terms that prohibit use of your data for model training. MiniMax
M3 conversation requests are served by Fireworks AI directly under
CREAO’s own Fireworks account; Fireworks’ API terms prohibit use of your
data for model training. If Fireworks returns a capacity error (a rate limit
or transient server error), the request is automatically retried once via
OpenRouter and served by DeepInfra, Novita, or Together AI —
that fallback path is governed by CREAO’s API agreement with OpenRouter,
whose API terms prohibit training use. MiniMax M3.1 Flash takes a different
path: it is sent directly to MiniMax under CREAO’s own MiniMax API
agreement, so conversation content for it — including any image attached to a
MiniMax M3.1 Flash conversation — reaches MiniMax and no relay. Internal response-quality evaluations use a separately selected model and provider, defaulting to MiniMax M3 through OpenRouter; MiniMax’s own API remains an alternative. The selected provider’s API terms described here also apply to evaluation requests. Moonshot AI models are
reached via OpenRouter — CREAO’s API agreement for that provider is with
OpenRouter, whose API terms prohibit training use. Kimi K3 is served by
Fireworks AI under CREAO’s own Fireworks account, and it accepts images:
an image attached to a Kimi K3 conversation is sent to OpenRouter and
Fireworks as part of the request. The two GLM models take
different paths: GLM 5.2 is reached via OpenRouter and served by
Fireworks AI under CREAO’s own Fireworks account, while GLM 5.3 and
GLM 5.3 Flash are sent directly to Z.AI under CREAO’s own Z.AI API
agreement, whose terms prohibit training use — so conversation content for the
GLM 5.3 models reaches Z.AI and no other company, not even a relay. CREAO can
move either onto the OpenRouter path as a fallback (for example during a Z.AI
outage), in which case OpenRouter relays the request and Z.AI still performs the
inference, as it is the only host OpenRouter offers for those models. Of the GLM
models, only GLM 5.3 Flash accepts images: an image attached to a GLM 5.3
Flash conversation is sent to Z.AI as part of the request. GLM 5.2 and GLM 5.3
are text-only, so an image attached to those is described by CREAO’s own
analyze_image step instead and never reaches Z.AI as image bytes. Thinking Machines’ Inkling is reached via OpenRouter,
whose API terms prohibit training use.
DeepSeek V4.1 Flash is served by default through OpenRouter, with
Fireworks AI preferred under CREAO’s Fireworks account. Conversation
messages, context, and attached images are sent to OpenRouter and the serving
inference host. If Fireworks cannot serve a request, OpenRouter may use another
available host for the same model: GMICloud, Novita, DeepInfra,
Parasail, Morph, or io.net. DeepSeek’s own API endpoint is excluded
from CREAO’s Flash routing, so DeepSeek itself does not receive this content.
OpenRouter and Fireworks API terms prohibit use of this data for model training.
This is the default Flash model used by the Lite tier and default agents;
selecting Flash does not keep conversation content exclusively on CREAO systems.
Background Agent Brain curation and periodic thread-note checkpoints using
this Flash selection follow the same default route, independently of the
model selected for chat.CREAO also retains an explicitly selected legacy DeepSeek V4 Flash route
on CREAO-managed inference servers hosted on Nebius. This is not the
default Flash route. Legacy self-hosted requests may fall back to OpenRouter
hosts serving the same V4 checkpoint after a capacity or availability error,
with Fireworks preferred and DeepSeek’s own API excluded. A corrupted stream
may also be regenerated on the same self-hosted infrastructure.DeepSeek V4 Pro is a different arrangement, and the difference matters.
CREAO does not self-host DeepSeek V4 Pro. Conversation
requests for this model are relayed via OpenRouter and served either by
DeepSeek’s own API (the preferred host) or, as a fallback, by GMICloud —
so conversation content for DeepSeek V4 Pro is sent to DeepSeek, and may be
sent to GMICloud. Both paths are governed by CREAO’s API agreement with
OpenRouter together with the serving provider’s own API terms, which prohibit
use of your data for model training. Flash excludes DeepSeek’s own API, but
its default route still sends conversation content to external inference hosts.Requests relayed through
OpenRouter may also be served by Fireworks AI under CREAO’s own Fireworks
account (currently GLM 5.2 and Kimi K3, and potentially other
OpenRouter-routed open models); Fireworks’ API terms prohibit use of your data for
model training, and Fireworks states it does not log or store prompt or
generation data for open models by default.Muse Spark is reached
directly via the Meta Model API under Meta’s developer API terms, which
prohibit use of your content to train Meta’s models; Meta may use aggregated,
anonymized service-usage data (not your content) to improve its services.
This includes image inputs
sent for generation tasks (for example, image-to-video with Veo). Providers
may retain data briefly for abuse monitoring and safety as required by their
terms, but not for training purposes on these paths.Fugu Ultra via Sakana AI is a qualified exception while governed by
Sakana’s public Fugu terms. Those terms may allow submitted content to be
used for Sakana training and improvement unless an opt-out or separate
no-training/DPA arrangement is in place. Do not select Fugu Ultra for
regulated, sensitive, confidential, or personal data unless your workspace has
confirmed the required Sakana terms.
How is data sent to AI models?
How is data sent to AI models?
When you chat with the super agent, your messages and relevant context (files, memory, Dream profile, skill instructions, and — for organizations that have connected their own database — the names of the connected databases and schemas, plus any standing instructions your organization configured for those databases) are sent to the selected LLM provider via their API. All API calls use encrypted connections. Responses are streamed back to your browser in real time.For the separately gated personal-chat feature that answers a question about an uploaded large video, CREAO does not send the full video, a download URL, or storage credentials to the AI provider or the chat sandbox. CREAO verifies that the video is your completed private upload, creates up to five size-bounded visual frame samples plus basic media metadata (duration, dimensions, codec, and whether an audio stream exists), and sends only those samples, metadata, and your focused question through the configured vision-model provider channel. The original video remains in CREAO’s private storage. Temporary host-side source and frame files are deleted after the request; CREAO does not retain a video-analysis cache or transcript for this feature.For the separately gated personal-chat feature that answers a question about an uploaded large image, CREAO does not send the original image, a download URL, or storage credentials to the AI provider or the chat sandbox. CREAO verifies that the image is your completed private upload, creates one size-bounded overview and, when useful, up to four size-bounded detail tiles (only the first frame for an animated GIF), and sends only those derivatives, their dimensions/labels, and your focused question through the configured vision-model provider channel. The original image remains in CREAO’s private storage. Temporary host-side source and derivative files are deleted after the request; CREAO does not retain a large-image-analysis cache or OCR transcript for this feature.For the separately gated personal-chat feature that works with an uploaded large PDF, CREAO copies the PDF into your own chat workspace, where the agent reads it like any other file you attach. It can extract the text of the pages it needs, render selected pages to images, and split, merge, trim, or otherwise edit the file when you ask. CREAO does not send the PDF file itself, a download URL, or storage credentials to the AI provider; only the page text and rendered page images the agent selects for a given question are sent to the model you selected, through the configured AI-model provider channel. Because rendered pages go to a vision model, the agent is instructed to render only the pages a question needs — roughly twenty at most in one turn — and to tell you which pages it read and which it did not. The copy lives in your private workspace storage alongside your other uploads and is removed when you delete the file or your account.Scheduled agent runs use the model selected for that schedule and send the run’s prompt, inputs, and relevant agent context through the same provider channel and under the same provider terms, including the Fugu Ultra exception above.After an agent run completes, CREAO may send a size-bounded excerpt of the run’s request or output to a configured supported LLM to generate the title and summary shown on its run card. This metadata request uses the same encrypted provider channels and provider terms described above.When you approve a dynamic workflow, individual workflow task prompts and scoped task context may be sent to LLM providers as isolated worker or synthesis requests. CREAO stores task summaries and copies generated artifacts into the parent thread’s file store, but worker intermediate transcripts are not inserted back into the parent conversation context.When you use CREAO CLI to create or edit a personal agent from natural-language instructions, that free-text input is sent through the same agent/LLM workflow used by the main CREAO app so the agent definition can be designed and persisted. No additional AI provider or data category is introduced for this path.Connected-database metadata is limited to the source name, type, and the database/schema NAMES that the workspace owner chose to expose. Database row contents are not sent to the LLM unless the agent is explicitly asked to query the data; in that case, the query result rows flow through the same provider channel as the rest of your conversation.When a warehouse-backed answer is produced, CREAO also records a query receipt for that turn: the SQL text the agent ran (truncated), the data source it targeted, how long the query took, the row count, and — on failure — an error code. Receipts are shown to you alongside the answer so the SQL behind a number is inspectable. They are stored with the conversation and are NOT inserted into the model’s context, so they add no new data flow to any LLM provider. Note that the SQL text itself can embed values you asked the agent to filter on.Separately, CREAO staff can review agent-written SQL that FAILED, to find and fix cases where the agent writes queries a database rejects. An internal dashboard, restricted to administrators, shows a rolling window of recently failed statements (truncated to 600 characters) together with the database’s error message. This reads query history the data warehouse itself retains — typically about seven days — rather than a copy CREAO stores, and it covers only statements that errored: a query that ran successfully never appears there. As above, failing SQL can embed values you asked the agent to filter on. Today this surface covers CREAO’s own analytics warehouse; if it is extended to customer-connected databases, this notice will be updated first.When the agent uses a connector tool (X, Gmail, Slack, GitHub, custom MCP servers, etc.), the tool’s response is made available to the agent so it can act on the result — and this includes error responses, not just successful ones. If a connector call fails, the provider’s error message (for example, “this action requires a higher access tier” or “missing required field”) is forwarded to your selected LLM provider so the agent can explain the failure or correct and retry. CREAO applies a best-effort pass to strip credential-shaped tokens from these error messages before they enter the context.Eligible text/JSON tool responses above 32 KiB may instead be saved as private workspace files. In that case, a short preview and file reference are sent to your selected LLM provider, followed by any content the agent selectively retrieves for your task. See Data Retention for how these saved outputs are retained.When the agent retrieves the result of a capability task on your paired CREAO Connect device (including a custom MCP server you configured on that device), the result — arbitrary local output such as command output, file contents, or an MCP tool’s response — is inserted into the agent’s context and forwarded to your selected LLM provider, the same way other tool results are. Starting a background task does not itself send a future result to the model; the result enters model context when the agent checks the completed task. This output is explicitly framed to the model as untrusted, since it originates from code CREAO does not control running on your own machine.For a connected AWS account (Bring Your Own Cloud), the results the agent reads from your account — CloudWatch log events, metric data points, and alarm states — flow into the agent’s context to answer your request. Like other connector data, that means these tool results are sent to your selected LLM provider as part of the conversation context. The agent reads only what the tool you triggered returns; CREAO does not bulk-export or continuously ingest your cloud account.If you install the CREAO Slack Agent App in a Slack workspace, messages that @mention the bot or are sent to it directly are sent to your selected LLM provider as part of the agent’s context, and the agent’s reply is posted back into that Slack thread or DM. See Connector Data Access below for what’s collected, from whom, and how consent works for this feature.Organizations can also configure standing instructions for a connected database — free text (up to 20,000 characters per data source) authored by your own organization’s members, not by CREAO. When that data source is connected to a chat, these instructions are injected verbatim into the agent’s system prompt for every conversation in the organization, so they are forwarded to your selected LLM provider as part of the context window. Organizations can likewise save reusable prompt templates (a name plus a prompt body); a template’s prompt body is only sent to the provider if a member actually inserts it into a message. Both surfaces are editable by any member of the organization.Personal reflection-profile and user-playbook retrieval has been retired in favor of file-based Agent Brain memory. Agent apps continue to use app-specific reflection playbooks: app conversations may be processed by the reflection service to learn playbooks, and relevant saved playbooks are sent to your selected LLM provider during app runs. Access is checked against the app, and shared organization apps use only approved playbooks. Developer API agent-memory operations use this same app-specific store, separate from your personal Agent Brain memory. Room runs with memory disabled do not retrieve or publish reflection memory.Legacy database-memory extraction and Dream profile generation are retired. Existing records remain available for historical access; active profile curation uses file-based Agent Brain memory as described below.For accounts using file-based Agent Brain memory, CREAO queues a background DeepSeek V4.1 Flash review through OpenRouter, preferring Fireworks AI, after a session. The review considers the completed conversation, thread notes, the existing bounded
USER.md profile, relevant context files and agent-authored skills; it may rewrite the profile, create or update context files, and create, rewrite, merge, or remove agent-authored skills. Relevant context-file contents, including any third-party personal data they contain, can therefore be sent to the curator’s model provider. A compact context index is included in later conversations, and the conversational agent can read relevant files on demand and include their content in requests to your selected model provider. During long conversations, CREAO also sends recent messages and existing thread notes to DeepSeek V4.1 Flash every ten user turns to refresh concise thread notes. Jobs are retried after transient failures and run independently of the model selected for the conversation. The gateway may use a third-party provider serving the same model when routing or availability requires it, under the DeepSeek processing and fallback terms below.When you request an AI edit to an agent-authored skill file from the Memory view, CREAO sends the complete current selected file—either SKILL.md or a supporting file—and your edit instruction in one request to the default DeepSeek V4.1 Flash OpenRouter path, preferring Fireworks AI, independently of the model selected for chat. The edited file is validated and written back only if the version you opened has not changed in the meantime. This request uses the same encrypted gateway, failover terms, and usage-based credit billing described for DeepSeek V4.1 Flash above.Legacy database-memory search no longer sends candidate memories to Claude Haiku for reranking. File-based Agent Brain memory and app-specific reflection playbooks use the separate retrieval paths described above.When you paste MCP setup instructions into CREAO Connect on a paired device, that text (up to 16 KB) is sent to Claude Haiku to be read into a proposed server configuration. Two things about this are worth stating plainly. First, the text you paste leaves your computer — the desktop app says so above the button, before you click, because setup instructions copied from a vendor page sometimes contain a live API key. Second, the reply is only ever a proposal: it is validated server-side, anything that looks like a credential is blanked before it comes back, and nothing is written to your machine until you tick an individual entry yourself. This adds no new subprocessor (Anthropic is already used above), and CREAO does not store the pasted text — only its length, how many servers were read, and why any were rejected.Separately, a paired CREAO Connect device can send a direct model request — a caller-composed prompt naming any model from CREAO’s existing model catalog — through CREAO’s own gateway to that model’s provider, billed to your account like any other model usage. This capability is off by default for every paired device and only reaches models already disclosed above (including OpenRouter-routed models where the catalog uses that path); no new provider is introduced. CREAO does not persist the request or response bodies sent through this path — only outcome metadata (which model, whether it succeeded, and its status) is recorded.Follow-up suggestion chips shown under an answer are generated by the same LLM provider you selected for the conversation, in a short internal follow-up request the platform makes right after the answer is complete: it asks the same model, with the conversation context it already has plus the names of your saved agents and available integrations, to return the suggestions as structured data. No additional provider or separate platform model is involved, and no extra copy of your conversation is sent anywhere — the request reuses the same session with the same provider (and, like the rest of the turn, is part of its normal usage-based billing). The request and its reply are used only to render the chips and are not kept as part of the conversation history the agent sees on later turns.When a turn creates files, CREAO may make one further internal request to record where each new file came from — for example, that an extended video came from the original clip and its last frame. Three things about this differ from the follow-up chips above and are worth stating plainly. First, it does not use the model you selected for the conversation: it goes to a small Claude model (Anthropic, already listed above), so the request may reach a different provider than the rest of your conversation. Second, it does not send your conversation; it sends only a short summary of what the agent did in that one turn — the commands and tool calls it ran, plus a few selected lines of their output chosen because they look like they name a file. Those excerpts can include fragments of command output. Third, unlike the chips, its reply is stored: the derivation — the source file names and the kind of operation — is saved alongside the file’s own record, is retained and deleted with that file, and is not shown to you or fed back to any model today. This request is not billed to your account and consumes none of your credits.So the agent can answer “can I use this feature?” for your account instead of quoting the public plan descriptions, CREAO includes a short account-capability summary in the agent’s system prompt, which is forwarded to your selected LLM provider like the rest of the context. This summary is deliberately minimal: a set of yes/no flags for capabilities such as scheduled runs, long-running media renders, premium models, longer generated PDFs, and video generation, plus how many scheduled runs or renders may run at the same time. It contains no plan or package name, no prices or amounts, no billing history, no credit balance, and no account identifiers.Personal file memory remains user-scoped; legacy organization memories and Dream profiles are not automatically injected into current runs. For a shared team agent, reflection-derived agent playbooks learned from members’ conversations with that agent may be included when other authorized members run it, once approved for shared use. The agent’s creator can view, approve, reject or delete these playbooks; other organization members with app access can view them.Which AI providers does CREAO use?
Which AI providers does CREAO use?
CREAO supports multiple LLM providers:
- Anthropic (Claude Fable, Opus, Sonnet, Haiku)
- OpenAI (GPT-6 Astra, GPT-6.1 Sol, GPT-6 Sol, GPT-6 Luna, GPT-5.6, GPT-5.5)
- Google (Gemini Pro, Gemini Flash; Veo and Gemini Omni Flash for video generation; Gemini Transcribe for speech-to-text voice transcription, where enabled)
- MiniMax (MiniMax M3.1 Flash — sent directly to MiniMax under CREAO’s own MiniMax agreement, including attached images; MiniMax M3, whose conversation requests are served by Fireworks AI; the default internal quality evaluations use OpenRouter. MiniMax’s own API can also process evaluations when selected; see the evaluation data categories below.)
- Z.AI (GLM 5.3 and GLM 5.3 Flash — sent directly to Z.AI under CREAO’s own Z.AI agreement, and performed by Z.AI; also GLM 5.2, which is relayed via OpenRouter but whose inference is performed by Fireworks AI)
- Moonshot AI (Kimi K3, via OpenRouter)
- Thinking Machines (Inkling via OpenRouter)
- DeepSeek (model publisher; DeepSeek V4.1 Flash is served via OpenRouter, preferring Fireworks AI and excluding DeepSeek’s own API. V4 Pro is served via OpenRouter by DeepSeek’s own API by preference, or GMICloud as a fallback; DeepSeek receives V4 Pro conversation content under its API terms, which prohibit training use)
- Fireworks AI (preferred inference host for DeepSeek V4.1 Flash via OpenRouter, including messages, context, and attached images; also serves MiniMax M3 directly, GLM 5.2 via OpenRouter, and internal quality evaluations through OpenRouter when selected, under CREAO’s Fireworks account)
- DeepInfra / Novita / Together AI (MiniMax M3 fallback through OpenRouter; DeepInfra and Novita can also serve DeepSeek V4.1 Flash fallback requests, including attached images)
- GMICloud (OpenRouter fallback inference for DeepSeek V4 Pro and V4.1 Flash; Flash requests can include attached images)
- Parasail / Morph / io.net (OpenRouter fallback inference for DeepSeek V4.1 Flash, including messages, context, and attached images)
- Meta (Muse Spark models via the Meta Model API. Muse Spark 1.3 and 1.2 go directly to Meta by default and reach OpenRouter only if CREAO moves them onto that path as a fallback, in which case OpenRouter relays the request and Meta still performs the inference, being the only host OpenRouter offers for those models; Muse Spark 1.1 has no such fallback)
- BytePlus (Seedance video generation, Seedream image generation)
- Sakana AI (Fugu Ultra model orchestration)
What about code execution?
What about code execution?
Code generated by the AI runs in an isolated sandbox. The sandbox has no access to other users’ data, no persistent network access to internal systems, and is destroyed after the session ends. Generated files are stored encrypted and associated only with your account. If you share a thread via the Share feature, files and artifacts within that thread become accessible to anyone with the share link.
Connector Data Access
Connectors provide scoped access to third-party systems (OAuth/API-key based). See Skills and Connectors for the full feature overview and Security for auth model and security controls.
Some connectors run through direct provider API integrations; others may run through integration relay infrastructure. In all cases, access is bound to your authenticated connector account and approved permissions.
Calendly connector. When enabled for your account, Calendly connects through Pipedream-managed OAuth for one Calendly user. Pipedream manages the OAuth credentials and CREAO stores the Pipedream account identifier and connection display metadata. Reads and the writes listed above use CREAO’s existing connector and agent processing paths, and every write requires approval under the default Always ask autonomy mode. Cancelling an event emails every invitee and cannot be undone, and a scheduling link lets whoever receives it book one meeting. Disconnecting does not undo cancellations, links or no-show marks already written to Calendly. Disconnect in CREAO to remove the active connection and request deletion of the connected Pipedream account.
HighLevel connector. When enabled for your account, HighLevel connects through Pipedream-managed OAuth for one sub-account (location); agency-level connections are not supported. Pipedream manages the OAuth credentials and CREAO stores the Pipedream account identifier and connection display metadata. Contact, pipeline and booking reads and the writes listed above use CREAO’s existing connector and agent processing paths, and every write requires approval under the default Always ask autonomy mode. Adding a contact to a campaign or booking an appointment can cause HighLevel to message that contact according to the sub-account’s own automations. Disconnecting does not undo records already written to HighLevel. Disconnect in CREAO to remove the active connection and request deletion of the connected Pipedream account.
Square connector. When enabled for your account, Square connects through Pipedream-managed OAuth for one Square seller. Pipedream manages the OAuth credentials and CREAO stores the Pipedream account identifier and connection display metadata. Reads and the writes listed above use CREAO’s existing connector and agent processing paths, and every write requires approval under the default Always ask autonomy mode. No Square tool moves money: orders and payment links create records and a checkout page, and a buyer is charged only by paying on that page; invoices are created as drafts and are not sent. The authorization Pipedream holds is broader than the tools CREAO exposes, as listed above. Disconnecting does not undo records already written to Square. Disconnect in CREAO to remove the active connection and request deletion of the connected Pipedream account.
Todoist connector. When enabled for your account, Todoist connects through Pipedream-managed OAuth. CREAO can read and change the tasks, projects, sections, labels, filters, comments and collaborators your Todoist account can access, and can invite people to your projects by email. CREAO stores the Pipedream account identifier and connection display metadata; Pipedream manages the OAuth credentials. Creating, updating, completing, moving, deleting, importing and inviting require approval under the default Always ask autonomy mode. A task export is saved as a CSV file in your CREAO files for that conversation, where you can download or delete it like any generated file; a CSV you import is transferred from CREAO storage through Pipedream to Todoist. Disconnect in CREAO to remove the active connection and request deletion of the connected Pipedream account; revoke the Pipedream integration in Todoist settings to remove upstream access.
LinkedIn connector. When enabled for your account, LinkedIn connects through Pipedream-managed OAuth. The permissions you grant during LinkedIn authorization and your organization roles determine which member and organization operations are available. CREAO stores the Pipedream account identifier and connection display metadata; Pipedream manages the OAuth credentials. Requested inputs and results use CREAO’s existing connector and agent processing paths. Video uploads and publishing are separate actions: uploading a video does not create a post. Uploading, posting text, images or videos, commenting, liking, and deletion require approval under the default Always ask autonomy mode. Posts can be public, and disconnecting does not remove content already published on LinkedIn. Disconnect in CREAO to remove the active connection and request deletion of the connected Pipedream account; revoke the Pipedream authorization in LinkedIn settings to remove upstream access.
Zoom connector. When enabled for your account, Zoom connects through Pipedream-managed OAuth, and Pipedream holds the OAuth credentials; CREAO stores the Pipedream account identifier and connection display metadata. What the agent can read or change is bounded by the permissions granted during Zoom authorization, your Zoom role, and your Zoom plan: cloud recordings and transcripts need cloud recording, AI summaries need AI Companion, webinar tools need a webinar license, Zoom Phone tools need a Zoom Phone license, and adding or removing account users needs a Zoom administrator role. Transcripts and summaries of meetings you host can contain what every participant said. Recording download links are time-limited but work for anyone who holds them until they expire, so treat them like the recording itself. Creating, updating and deleting meetings, updating webinars, registering attendees, sending chat messages, and creating or removing users require approval under the default Always ask autonomy mode; Zoom may email hosts, registrants or new users as a result. Disconnect in CREAO to remove the active connection and request deletion of the connected Pipedream account; remove the Pipedream app from your Zoom account to revoke upstream access.
Stripe connector. When you connect Stripe through Pipedream, CREAO can access customer contact and address data, products, prices, subscriptions, invoices and line items, Checkout Sessions, PaymentIntents, refunds, balances, payout records, and billing meters, subject to the permissions of your connected Stripe credentials. Authorized write tools can create and modify these records, confirm or capture payments, issue refunds and payouts, cancel subscriptions, and delete or void eligible records. These operations can move money or affect your customers when you connect a live-mode account. Pipedream manages the connected credentials; CREAO uses the existing connector and agent processing paths for requested inputs and results. Disconnect in CREAO and revoke the connection or restricted key in Stripe to remove upstream access. This optional connector is separate from Stripe’s role processing your own CREAO subscription payments.
Etsy seller connector. When enabled for your account, CREAO’s first-party Etsy OAuth connector can access the connected seller’s shop profile, taxonomy choices, listings, product photos and digital files, inventory and variations, shipping/processing profiles, receipts, transaction line items, payment summaries, carrier choices, and shipment status/tracking values. CREAO requests
listings_r, listings_w, shops_r, shops_w, transactions_r, and transactions_w; it does not request buyer-email, saved-address, profile, billing-statement, or permanent-listing-delete scopes. Receipt payloads are filtered before reaching the agent to remove buyer email and street-address fields. Product files and photos you select are transferred from CREAO storage to Etsy. The encrypted OAuth tokens, Etsy user/shop identifiers, shop display name, granted scopes, and token-expiry timestamps are kept until you disconnect Etsy or delete your CREAO account; token and PKCE-state tables are excluded entirely from the analytics warehouse. Disconnect in CREAO and, if desired, revoke CREAO under Etsy Shop Manager → Apps → Connected apps.
Slack app (bot install) is a different model from the “Collaboration” row above. A single workspace member (“the installer”) installs the CREAO Slack app and grants it standing, workspace-wide read access — channel, group, and DM message history and files, not just the installer’s own OAuth-scoped data — for every channel the bot is subsequently added to. The installer explicitly acknowledges a consent notice before the integration activates, but other members of the workspace whose messages become readable once the bot joins their channel have not individually authorized anything themselves; their consent is provided at the workspace level, through whoever installs the app. Every agent run triggered from Slack executes as the installer’s CREAO account (their agent, credits, and connected tools), regardless of which workspace member sent the triggering message. The installer can revoke access at any time by uninstalling the app from Slack or CREAO’s integration settings, which best-effort revokes the bot token.
Posting media to X (attaching user-uploaded or agent-generated images and video to a tweet) requires the media.write OAuth scope. When you post, CREAO fetches the media bytes from your CREAO storage and uploads them to X’s API; each posting action still requires your explicit approval. If you connected X before this scope was introduced, you may need to reconnect X to grant media.write before media attachments will work.
Slack Agent App (Inbound)
This is a separate feature from the “Collaboration” Slack connector above, which lets your agent send messages out to Slack. The Slack Agent App instead lets people bring a CREAO agent into a Slack workspace by @mentioning it or messaging it directly — and it involves a different set of data subjects, so it’s documented on its own.- Who installs it and who’s bound to it: A CREAO account holder (“the installer”) authorizes the app into a Slack workspace via Slack OAuth. Every @mention or direct message to the bot in that workspace — from any member, whether or not they have a CREAO account — runs as the installer’s own agent, on the installer’s credits, using the installer’s connected integrations. The installer must explicitly acknowledge this before the integration activates: anyone with access to a channel the bot is in, or who can message it directly, can trigger a run on the installer’s behalf.
- What’s collected from a triggering message: the Slack workspace/channel/thread identifiers, the triggering member’s Slack user ID, and the text of the message or mention (plus references to any attached files) needed to generate the agent’s response. This is retained only long enough to process the request and support troubleshooting — see Data Retention below — and is not linked to a CREAO account unless the triggering member happens to also be the installer.
- Where it goes: the message text is sent to the installer’s selected LLM provider as agent context (see AI & Model Usage above) and the agent’s reply is posted back into the originating Slack thread or DM, visible to that thread’s Slack participants. If the installer’s selected agent is a routing agent (CREAO auto-provisions a default “Team Request Router” the first time the app is installed), it may forward the message on to a second, more specific agent it selects — still executing as the installer’s account, on the installer’s credits, so the same data-flow guarantees above apply to that second agent’s LLM provider and connected tools as well.
- Removing it: the installer can disconnect the app from CREAO settings at any time, which revokes CREAO’s Slack access token; removing the app from the Slack workspace has the same effect. A workspace member whose message was processed and who is not the installer can request deletion of their retained data via privacy@creao.ai.
Skill Data Handling
Built-in skills are instruction packages — they do not create new third-party data sharing paths by themselves. See Skills and Connectors for the full feature overview and Security for safety boundaries. Built-in skills may operate on:- User prompts and conversation context
- User-provided files and generated artifacts
- Connected-service data when relevant connectors are authorized
Subprocessors
The following third-party services process data on behalf of CREAO:Billing Routing
CREAO uses Stripe Connect to route payments through regional Stripe accounts so that charges are processed by a merchant entity closer to the cardholder, reducing payment declines. The country associated with your IP address (provided by Cloudflare via thecf-ipcountry header) determines which Stripe account processes your payment:
- United States and Canada — payments are processed by New Boundary, Inc. (US Stripe account) as a connected account on the CREAO platform
- All other regions — payments are processed directly by the CREAO platform Stripe account (Hong Kong)