Skip to content
Cloudflare Docs

Applications and app types

Gateway allows you to create DNS, Network, and HTTP policies based on applications and app types. You can select individual applications or groups of app types to filter specific traffic on your network.

Applications

When you choose the Application selector in a Gateway policy builder, the Value field will include all supported applications and their respective app types. Alternatively, you can use the Gateway API to fetch a list of applications, app types, and ID numbers.

To manage a consolidated list of applications across Zero Trust, you can use the Application Library.

App types

Gateway sorts applications into the following app type groups:

ValueDefinition
Artificial IntelligenceAI assistance applications
Audio StreamingMusic streaming, podcasts, and other audio applications
Collaboration & Online MeetingsBusiness communication and collaboration applications
DatingOnline dating applications
DevelopmentSoftware development and development operations applications
EmailEmail applications
Encrypted DNSDNS encryption applications
File SharingFile sharing applications
Finance & AccountingFinancial and accounting applications
GamingGames and gaming applications
Human ResourcesEmployee management applications and workforce tools
Instant MessagingInstant messaging applications
IT ManagementIT deployment management applications
LegalLegal tools and applications
NewsNews applications
ProductivityBusiness and productivity applications
Public CloudPublic cloud infrastructure management applications
Sales & MarketingSales and marketing applications
Search EnginesWeb search engines and applications
SecurityInformation security applications, including shadow IT
ShoppingOnline shopping applications
Social NetworkingSocial networking applications
SportsSports streaming and news applications
Video StreamingVideo streaming applications
Do Not InspectApplications incompatible with the TLS certificate required by the Gateway proxy

Application controls

With Application Granular Controls, you can choose specific actions and operations to match application traffic. Supported applications and operations include:

ChatGPT (app ID 1199)

Operation nameOperation IDApplication Control nameApplication Control IDContains payloadOperation GroupOperation Group ID
SendPrompt8004Prompt1652Chat1650
UploadFile8008Upload1653Chat1650
UploadFilePayload8013Upload1653Chat1650
ShareResponse8006Share1654Chat1650
ShareCanvas8007Share1654Chat1650
TranscribeVoice8011Voice1655Chat1650
EnableVoiceMode8003Voice1655Chat1650
AllowTraining8009Settings1651
AllowVoiceTraining8010Settings1651
AllowVideoTraining8016Settings1651
ExportData8020Settings1651

Google Gemini (app ID 1340)

Operation nameOperation IDApplication Control nameApplication Control IDContains payloadOperation GroupOperation Group ID
SendPrompt8021Prompt1657Chat1656
UploadFile8022Upload1658Chat1656
UploadFilePayload8023Upload1658Chat1656
TranscribeVoice8025Voice1659Chat1656

Perplexity (app ID 1937)

Operation nameOperation IDApplication Control nameApplication Control IDContains payloadOperation GroupOperation Group ID
SendPrompt11947Prompt2598Chat2596
ClarifyingPrompt11951Prompt2598Chat2596
CreateUploadUrl11948Upload2599Chat2596
UploadFile11955Upload2599Chat2596
UploadOrganizationFile11950Upload2599Settings2597
ShareChat11952Share2600Chat2596
VoiceTranscription11953Voice2601Chat2596
ExportChat11949Chat2596
DeleteThread11954Chat2596
DeleteOrganizationFile11956Settings2597

Claude (app ID 2430)

Operation nameOperation IDApplication Control nameApplication Control IDContains payloadOperation GroupOperation Group ID
SendPrompt10048Prompt2127Chat2126
PromptCompletion10050Prompt2127Chat2126
RetryPromptCompletion10040Prompt2127Chat2126
UploadFile10039Upload2128Chat2126
ConvertDocument10041Upload2128Chat2126
ShareConversation10043Share2129Chat2126
GetShares10052Share2129Chat2126
CreateConversation10038Chat2126
GetConversation10046Chat2126
UpdateConversation10047Chat2126
DeleteConversation10045Chat2126
UpdateAccount10036Settings2125
InitiateDataExport10037Settings2125
GiveFeedback10042Chat2126
SetConversationTitle10044Chat2126
GetOrganisation10049Settings2125
GetFilePreview10051Chat2126

Usage

Overlapping hostnames

Overlapping hostnames are most common for vendors with many applications, such as Google or Meta. When you use the Application selector in Gateway policies, actions taken by Gateway will be limited to the specific application defined. Gateway will also log other applications that use the same hostnames, but it will not take action unless the application was matched by the policy. For example, both the Facebook and Facebook Messenger apps use the chat-e2ee.facebook.com hostname. When evaluating traffic to the Facebook Messenger app, Gateway will only take action on Facebook Messenger traffic but may log both the Facebook and Facebook Messenger apps.

To ensure Gateway evaluates traffic with your desired precedence, order your most specific policies with the highest priority according to order of precedence.

Do Not Inspect applications

Gateway automatically groups applications incompatible with TLS decryption into the Do Not Inspect app type. As Cloudflare identifies incompatible applications, Gateway will periodically update this app type to add new applications. To ensure Gateway does not intercept any current or future incompatible traffic, you can create a Do Not Inspect HTTP policy with the entire Do Not Inspect app type selected.

When managing applications with the Application Library, Do Not Inspect applications will appear under the corresponding application. For example, the App Library will group Google Drive (Do Not Inspect) under Google Drive.

TLS decryption limitations

Applications can be incompatible with TLS decryption for various reasons:

  • Certificate pinning: Certificate pinning is a security mechanism used to prevent on-path attacks on the Internet by hardcoding information about the certificate that the application expects to receive. If the wrong certificate is received, even if it is trusted by the system, the application will refuse to connect.

  • Non-web traffic: Some applications send non-web traffic, such as Session Initiation Protocol (SIP) and Extensible Messaging and Presence Protocol (XMPP), over TLS. Gateway cannot inspect these protocols.

Microsoft 365 integration

To optimize performance for Microsoft 365 applications and services, you can bypass TLS decryption by turning on the Microsoft 365 traffic integration. This will create a Do Not Inspect policy for all Microsoft 365 domains and IP addresses specified by Microsoft. This policy also uses Cloudflare intelligence to identify other Microsoft 365 traffic not explicitly defined.

To turn on the Microsoft 365 integration:

  1. In Zero Trust, go to Settings > Network > Integrated experiences.
  2. In Bypass decryption of Microsoft 365 traffic, select Create policy.
  3. To verify the policy was created, select View policy. Alternatively, go to Gateway > Firewall policies > HTTP. A policy named Microsoft 365 Auto Generated will be enabled in your list.

All future Microsoft 365 traffic will bypass Gateway logging and filtering. To disable this behavior, turn off or delete the policy.

Terraform

Terraform users can retrieve the app types list with the cloudflare_zero_trust_gateway_app_types_list data source. This allows you to create Gateway policies with the application's name rather than its numeric ID. For example:

data "cloudflare_zero_trust_gateway_app_types_list" "gateway_apptypes" {
account_id = var.cloudflare_account_id
}
locals {
apptypes_map = merge([
for c in data.cloudflare_zero_trust_gateway_app_types_list.gateway_apptypes.result :
{ (c.name) = c.id }
]...)
}
resource "cloudflare_zero_trust_gateway_policy" "zt_block_dns_apps" {
account_id = var.cloudflare_account_id
name = "DNS Blocked apps"
action = "block"
traffic = "any(app.ids[*] in {${join(" ", [
local.apptypes_map["Discord"],
local.apptypes_map["GoToMeeting"],
local.apptypes_map["Greenhouse"],
local.apptypes_map["Zelle"],
local.apptypes_map["Microsoft Visual Studio"]
])}})"
}