Skip to main content

Quilr Endpoint Agent — Web Proxy / SWG Exception List (AI Apps)

SSL-inspection bypass list for AI assistants and GenAI file-upload endpoints Version 2026.05.11 — derived from agent-interceptor config (id 285, version 64)

Companion document: Quilr-Endpoint-Agent-URL-Exception-List-NonAI-Apps covers Slack, MS Teams, and other non-AI collaboration apps.


1. Why This List Exists

The Quilr Endpoint Agent performs on-device TLS interception of outbound traffic to a curated list of AI assistants and GenAI file-upload endpoints. It extracts prompt content and uploaded file content (after OCR / PDF / DOCX / XLSX / plaintext extraction), then ships structured events to the Quilr control plane for policy.

If your environment already runs a secure web gateway or CASB — Netskope, Zscaler ZIA, Cisco Umbrella SIG / Secure Web Appliance, Palo Alto Prisma Access, Forcepoint ONE, Symantec/Broadcom WSS / Edge SWG (ProxySG), McAfee/Skyhigh SWG, Check Point Harmony, iboss, Cloudflare Gateway, Menlo, etc. — those products also terminate and re-sign TLS for the same hosts. Two decryptors in the same path do not coexist. When the upstream SWG presents its own CA, the Quilr agent sees an unexpected leaf certificate, pinning checks fail, request signatures break, and the chain fails closed.

The fix: add every host in §3 to the SWG's SSL/TLS inspection bypass (a.k.a. "Do Not Decrypt", "SSL exception", "URL exemption", "Bypass Inspection") policy. Traffic still flows through the SWG — but end-to-end encrypted between endpoint and destination. Quilr decrypts on the host, captures the prompt/file, re-encrypts before packets leave the device.

For interception to function correctly, every URL listed here must:

  1. Be reachable from the endpoint (not blocked by SWG URL filtering, firewall, ZTNA, or DNS filter).
  2. Be bypassed from SSL/TLS inspection on every SWG / proxy / CASB in the path.
  3. Reach the endpoint via the same path the user's browser / native app uses. Split-tunnel or PAC-file routes that bypass the agent will not be observed.

2. How to Use This List

AudienceAction
Netskope adminPolicies → Real-time Protection → SSL Decryption → create a "Do Not Decrypt" rule scoped to the §3 domains. See §3.1.
Zscaler ZIA adminPolicy → SSL Inspection → add a "Do Not Inspect" rule matching a URL Category that contains the §3 hosts. See §3.2.
Other SWG / proxy adminAdd §3 domains to your product's "SSL bypass" feature — see §3.3 for the per-vendor cheat sheet.
Firewall / ZTNA adminAllow outbound 443 to every host in §3 from the macOS fleet.
EDR / Mac adminIf a host-based content filter sits in front of Quilr's network extension, allow-list the Quilr agent process.
Compliance / DLP ownerUse §4 to evidence which AI endpoints are actively monitored for prompt + file content by Quilr on the device.
Quilr adminRegenerate this guide when the agent-interceptor config version changes.

3. AI-App Domains to Allow + Bypass from SSL Inspection

#HostPurpose
1chatgpt.comChatGPT chat completions
2*.oaiusercontent.comChatGPT file uploads (raw downloads)
3claude.aiClaude chat + file uploads
4api.anthropic.comClaude Code / Anthropic API
5openrouter.ai, api.openrouter.aiOpenRouter chat completions
6api.individual.githubcopilot.comGitHub Copilot Web + plugin
7genspark.ai, www.genspark.aiGenspark agent + image upload
8*genspark*.blob.core.windows.netGenspark file upload (Azure blob)
9chat.deepseek.comDeepSeek chat + file upload
10kimi.comKimi chat completions
11sp.replit.comReplit AI prompts
12ingest.app.coframe.comReplit file-upload telemetry
13api.groq.comGroq chat completions
14graph.meta.ai, meta.ai, gateway.meta.aiMeta AI Web GraphQL + websocket
15rupload.meta.aiMeta AI Web file upload
16gemini.google.comGemini Web chat
17push.clients6.google.comGemini Web file upload
18substrate.office.com, substrate.svc.cloud.microsoftMS Copilot (Corporate) chat + image upload
19*.sharepoint.comMS Copilot file upload (SharePoint personal drive)

Wildcards. Hosts shown with * are matched via regex in the agent and must be expressed as a wildcard rule (or each subdomain enumerated) in your proxy/firewall.

3.1 Configuring the bypass in Netskope

  1. Sign in to the Netskope tenant admin console.
  2. Navigate to Policies → Real-time Protection → SSL Decryption.
  3. Click New Policy (top-right).
  4. Source: scope to the user group / OU / device group running the Quilr Endpoint Agent.
  5. Destination: Custom Category named Quilr Agent Bypass — AI Apps containing every host from §3 (wildcards for *.oaiusercontent.com, *.sharepoint.com, *genspark*.blob.core.windows.net).
  6. Action: Do Not Decrypt.
  7. Set Order: place this rule above any "Decrypt All" rule.
  8. Save and Apply Changes.
  9. Validate via §7.2 — the leaf-cert issuer for chatgpt.com should be the real provider CA, not "Netskope Certificate Authority".

3.2 Configuring the bypass in Zscaler Internet Access (ZIA)

  1. Sign in to the ZIA admin portal.
  2. Administration → Resources → URL Categories → Add URL Category. Name Quilr Agent Bypass — AI Apps; paste every host from §3 as Custom URLs (Zscaler accepts wildcards like .oaiusercontent.com, .sharepoint.com).
  3. Policy → SSL Inspection → SSL Inspection Policy → Add Rule: rule name Quilr Agent AI — Do Not Inspect; criteria URL Categories = Quilr Agent Bypass — AI Apps; scope to the macOS fleet.
  4. Action: Do Not Inspect.
  5. Order: drag the rule above any "Inspect All" rule.
  6. Save and Activate.
  7. (Optional) If you use Cloud App Control with categories like AI & ML Applications or Generative AI, add an explicit allow for the §3 hosts there as well — otherwise Cloud App Control can block them before the SSL bypass rule fires.
  8. Validate via §7.2.

3.3 Cheat sheet — equivalent feature per SWG / CASB vendor

Vendor / productWhere to add the bypassFeature name
NetskopePolicies → Real-time Protection → SSL DecryptionDo Not Decrypt
Zscaler ZIAPolicy → SSL Inspection → SSL Inspection PolicyDo Not Inspect
Cisco Umbrella SIGPolicies → Web Policy → SSL Decryption ListSelective Decryption — Exclude
Cisco Secure Web Appliance (WSA)Web Security Manager → Decryption Policies → URL FilteringPass Through
Palo Alto Prisma Access / NGFWPolicies → DecryptionNo Decrypt on custom URL category
Forcepoint ONE / Web SecurityWeb Policies → SSL Decryption → BypassSSL Bypass List
Symantec / Broadcom WSS, Edge SWG (ProxySG)SSL Visibility / Policy → SSL Intercept LayerDo Not Intercept
McAfee / Skyhigh SWGPolicy → Rule Sets → SSL ScannerStop Cycle / SSL bypass action
Check Point Harmony Connect / QuantumHTTPS Inspection → ExceptionsBypass HTTPS Inspection
ibossWeb Filters → SSL Decryption → SSL Decryption BypassSSL Decryption Bypass
Cloudflare GatewaySettings → Network → Firewall → HTTP policiesDo Not Inspect on a list
Menlo SecurityWeb Policy → SSL Inspection → ExceptionsBypass

If your vendor is not listed, search the product docs for "SSL decryption bypass", "do not inspect", "TLS exception", or "pass-through" — that's the feature you want.


4. Monitored AI URL Endpoints by Category

request_path is a Python-style regex. The "Friendly URL" column shows the human-readable shape; the "Pattern" column reproduces the exact regex from config so it can be cross-referenced with audit logs.

4.1 AI Chat / Prompt Endpoints

ApplicationFriendly URLPattern (regex)
ChatGPThttps://chatgpt.com/backend-api/f/conversationchatgpt\.com/backend\-api/f/conversation(?:\?|$)
Claudehttps://claude.ai/api/organizations/{org}/chat_conversations/{conv}/completionclaude\.ai/api/organizations/[\w-]+/chat_conversations/[\w-]+/completion
Claude Code (Anthropic API)https://api.anthropic.com/v1/messagesapi\.anthropic\.com/v1/messages
OpenRouterhttps://(api.)?openrouter.ai/api/v1/chat/completions(api\.)?openrouter\.ai/api/v1/chat/completions
GitHub Copilot Webhttps://api.individual.githubcopilot.com/github/chat/threads/{id}/messagesapi\.individual\.githubcopilot\.com/github/chat/threads/[\w-]+/messages
GitHub Copilot Pluginhttps://api.individual.githubcopilot.com/chat/completionsapi\.individual\.githubcopilot\.com/chat/completions
GitHub Copilot Plugin (ALT)https://api.individual.githubcopilot.com/responsesapi\.individual\.githubcopilot\.com/responses
Gensparkhttps://genspark.ai/api/agent/ask (and /ask_proxy)genspark\.ai/api/agent/ask(_proxy)?
DeepSeekhttps://chat.deepseek.com/api/v0/chat/completionchat\.deepseek\.com/api/v0/chat/completion
Kimihttps://kimi.com/api/chat/{id}/completion/streamkimi\.com/api/chat/\w+/completion/stream
Replithttps://sp.replit.com/v1/tsp\.replit\.com/v1/t
Groqhttps://api.groq.com/openai/v1/chat/completionsapi\.groq\.com/openai/v1/chat/completions
Meta AI Webhttps://graph.meta.ai/graphqlgraph\.meta\.ai/graphql
Meta AI Web (ALT)https://meta.ai/api/graphqlmeta\.ai/api/graphql
Meta AI Web (ALT-2)wss://gateway.meta.ai/ws/clippygateway\.meta\.ai/ws/clippy
Gemini Webhttps://gemini.google.com/_/BardChatUi/data/assistant.lamda.BardFrontendService/StreamGenerategemini\.google\.com(?:/u/2)?/_/BardChatUi/data/assistant\.lamda\.BardFrontendService/StreamGenerate
MS Copilot (Corporate)https://substrate.office.com/m365Copilot/Chathub/{user}@{tenant}substrate\.office\.com/m365Copilot/Chathub/[\w\d-]+@[\w\d-]+
MS Copilot (Corporate, ALT)https://substrate.svc.cloud.microsoft/m365Copilot/Chathub/{user}@{tenant}substrate\.svc\.cloud\.microsoft/m365Copilot/Chathub/[\w\d-]+@[\w\d-]+

4.2 AI File Upload Endpoints

These endpoints carry binary file uploads. The agent runs OCR / PDF / DOCX / XLSX / plain-text extraction on the file body before evaluating policy.

ApplicationFriendly URLPattern (regex)
ChatGPT Upload{bucket}.oaiusercontent.com/files/{id}/raw[\w-]+\.oaiusercontent\.com/files/[\w-]+/raw(?:\?|$)
Claude App File Uploadclaude.ai/api/organizations/{org}/convert_documentclaude\.ai/api/organizations/[\w-]+/convert_document
Claude Web File Uploadclaude.ai/api/{seg}/uploadclaude\.ai/api/[\w-]+/upload
Claude Web File Upload (ALT)claude.ai/api/organizations/{org}/conversations/{conv}/{file}/upload-fileclaude\.ai/api/organizations/[\w-]+/conversations/[\w-]+/[\w-]+/upload-file
Gemini Web File Uploadpush.clients6.google.com/uploadpush\.clients6\.google\.com/upload
Meta AI Web File Uploadrupload.meta.ai/gen_ai_document_gen_ai_tenant/{id}rupload\.meta\.ai/gen_ai_document_gen_ai_tenant/[\w-]+(\?.*)?
DeepSeek File Uploadchat.deepseek.com/api/v0/file/upload_filechat\.deepseek\.com/api/v0/file/upload_file
Genspark Image Uploadgenspark.ai/api/agent/ask (image payload)genspark\.ai/api/agent/ask(_proxy)?
Genspark File Upload (w/ prompt)genspark.ai/api/agent/ask (private_file payload)genspark\.ai/api/agent/ask(_proxy)?
Genspark File Upload (blob){tenant}.genspark.{*}.blob.core.windows.net/personal/{user}/.../file_upload/{id}[\w-]*genspark[\w-]*\.blob\.core\.windows\.net/personal/[\w-]+/[\w\d-]+/file_upload/[\w\d-]+(\?.*)?
Genspark HEIC Convertwww.genspark.ai/convert-heicwww\.genspark\.ai/convert-heic
MS Copilot Image Uploadsubstrate.office.com/m365Copilot/UploadFilesubstrate\.office\.com/m365Copilot/UploadFile
MS Copilot Image Upload (ALT)substrate.svc.cloud.microsoft/m365Copilot/UploadFilesubstrate\.svc\.cloud\.microsoft/m365Copilot/UploadFile
MS Copilot File Upload (SharePoint UploadSession){tenant}.sharepoint.com/personal/{user}/_api/v2.0/drive/items/{id}/uploadSession[\w-]+\.sharepoint\.com/personal/[\w_]+/_api/v2\.0/drive/items/[\w\d]+/uploadSession
Replit File Upload (telemetry)ingest.app.coframe.com/ingest/v2/batched_events/{id}/ingest\.app\.coframe\.com/ingest/v2/batched_events/[\w\d-]+/?

5. Per-OS Application Exclusions

Each rule has an excluded_apps field that tells the agent not to intercept traffic when the source process matches a listed binary.

PlatformExcluded processesEffect
macOS(none — empty for every AI rule)The Quilr Network Extension intercepts AI traffic regardless of which browser or native app initiated it.
Windowsmsedge.exe, chrome.exe (on the majority of AI rules)Traffic from Microsoft Edge and Google Chrome is not intercepted by the endpoint agent on Windows — those browsers are covered by the Quilr browser extension instead, avoiding double-capture.

AI rules with no Windows exclusions (intercept all processes on both OS)

  • Genspark (genspark.ai/api/agent/ask(_proxy)? — base rule; upload variants do exclude Edge/Chrome)
  • Groq (api.groq.com/openai/v1/chat/completions)
  • Meta AI Web (ALT) (meta.ai/api/graphql)
  • Meta AI Web (ALT-2) (gateway.meta.ai/ws/clippy)

6. Configuration Source of Truth

FieldValue
Source nameagent-interceptor
Source typeagent
Configuration ID285
Tenant442e052d-4c60-4cdc-961e-bc9db74a40ca
Version64
Created2026-02-04T13:28:36 UTC
Last updated2026-05-11T07:59:01 UTC
Activetrue

When the version above bumps, fetch the latest config from the Quilr control plane and regenerate this document.


7. Validation

7.1 Confirm a URL is being intercepted

On a macOS test endpoint with the agent installed:

sudo log stream --predicate 'subsystem == "ai.quilr.endpoint"' --info \
| grep -i 'intercepted\|matched'

# In the browser, navigate to chatgpt.com and send a short prompt.
# A 'matched' entry should appear within seconds.

7.2 Confirm a host is reachable and not externally MITM-d

curl -sS -o /dev/null -w "%{http_code}\n" \
https://api.anthropic.com/v1/messages -X POST

# Leaf cert issuer should be the real provider CA (Let's Encrypt /
# DigiCert / WE1) — NOT your corporate proxy CA.
openssl s_client -connect chatgpt.com:443 -servername chatgpt.com </dev/null 2>/dev/null \
| openssl x509 -noout -issuer

If the issuer line shows your network proxy's CA, your upstream proxy is decrypting that host — add the host from §3 to the proxy's bypass list.

7.3 Confirm Windows browser exclusions are working

  1. Open Microsoft Edge → ChatGPT → submit a prompt.
  2. Quilr Endpoint Agent log shows no interception event (the browser extension captures it instead).
  3. Repeat in Chrome — same expected result.
  4. Repeat in Firefox or a non-browser app — an interception event must appear.

8. Change Management

  • Adding a URL: update the agent-interceptor source in the Quilr control plane, increment version, bump the version line in this document and re-run the generator.
  • Removing a URL: confirm with policy and compliance owners before retiring an endpoint, since dashboards may depend on the historical app name.
  • Browser exclusions: toggle msedge.exe / chrome.exe in excluded_apps.win per rule. Section 5 must be updated.
  • Distribution: ship this guide alongside the Jamf deployment bundle and republish on any source-config version change.

End of document — Quilr AI | Adapt AI Securely