AptlyStar

Cloudflare

Manage DNS, domains, certificates, and cache

Cloudflare is a global cloud platform that provides content delivery, domain management, cybersecurity, and performance services for websites and applications.

In Aptlystar, the Cloudflare integration empowers your agents to automate the management of DNS records, SSL/TLS certificates, domains (zones), cache, zone settings, and more through easy-to-use API tools. Agents can securely list and edit domains, update DNS records, monitor analytics, and manage security and performance—all as part of your automated workflows.

With Cloudflare, you can:

  • Manage DNS and Domains: List all your domains (zones), view zone details, and fully control DNS records from your automated agent workflows.
  • Handle SSL/TLS Certificates and Settings: Issue, renew, or list certificates and adjust security and performance settings for your sites.
  • Purge Cache and Analyze Traffic: Instantly purge edge cache and review real-time DNS analytics directly within your Aptlystar agent processes.
  • Automate Security and Operations: Use agents to programmatically manage zones, update settings, and streamline repetitive Cloudflare tasks.

This integration enables streamlined, secure management of your site's infrastructure from within Aptlystar. Your agents can integrate Cloudflare operations directly into processes—keeping DNS records up-to-date, responding to security events, improving site performance, and automating large-scale site and account administration.

Usage Instructions

Integrate Cloudflare into the workflow. Manage zones (domains), DNS records, SSL/TLS certificates, zone settings, DNS analytics, and cache purging via the Cloudflare API.

Tools

cloudflare_list_zones

Lists all zones (domains) in the Cloudflare account.

Input

ParameterTypeRequiredDescription
namestringNoFilter zones by domain name (e.g., "example.com")
statusstringNoFilter by zone status: "initializing", "pending", "active", or "moved"
pagenumberNoPage number for pagination (default: 1)
per_pagenumberNoNumber of zones per page (default: 20, max: 50)
accountIdstringNoFilter zones by account ID
orderstringNoSort field (name, status, account.id, account.name)
directionstringNoSort direction (asc, desc)
matchstringNoMatch logic for filters (any, all). Default: all
apiKeystringYesCloudflare API Token

Output

ParameterTypeDescription
zonesarrayList of zones/domains
↳ idstringZone ID
↳ namestringDomain name
↳ statusstringZone status (initializing, pending, active, moved)
↳ pausedbooleanWhether the zone is paused
↳ typestringZone type (full, partial, or secondary)
↳ name_serversarrayAssigned Cloudflare name servers
↳ original_name_serversarrayOriginal name servers before moving to Cloudflare
↳ created_onstringISO 8601 date when the zone was created
↳ modified_onstringISO 8601 date when the zone was last modified
↳ activated_onstringISO 8601 date when the zone was activated
↳ development_modenumberSeconds remaining in development mode (0 = off)
↳ planobjectZone plan information
↳ idstringPlan identifier
↳ namestringPlan name
↳ pricenumberPlan price
↳ is_subscribedbooleanWhether the zone is subscribed to the plan
↳ frequencystringPlan billing frequency
↳ currencystringPlan currency
↳ legacy_idstringLegacy plan identifier
↳ accountobjectAccount the zone belongs to
↳ idstringAccount identifier
↳ namestringAccount name
↳ ownerobjectZone owner information
↳ idstringOwner identifier
↳ namestringOwner name
↳ typestringOwner type
↳ metaobjectZone metadata
↳ cdn_onlybooleanWhether the zone is CDN only
↳ custom_certificate_quotanumberCustom certificate quota
↳ dns_onlybooleanWhether the zone is DNS only
↳ foundation_dnsbooleanWhether foundation DNS is enabled
↳ page_rule_quotanumberPage rule quota
↳ phishing_detectedbooleanWhether phishing was detected
↳ stepnumberCurrent setup step
↳ vanity_name_serversarrayCustom vanity name servers
↳ permissionsarrayUser permissions for the zone
total_countnumberTotal number of zones matching the query

cloudflare_get_zone

Gets details for a specific zone (domain) by its ID.

Input

ParameterTypeRequiredDescription
zoneIdstringYesThe zone ID to retrieve details for
apiKeystringYesCloudflare API Token

Output

ParameterTypeDescription
idstringZone ID
namestringDomain name
statusstringZone status (initializing, pending, active, moved)
pausedbooleanWhether the zone is paused
typestringZone type (full, partial, or secondary)
name_serversarrayAssigned Cloudflare name servers
original_name_serversarrayOriginal name servers before moving to Cloudflare
created_onstringISO 8601 date when the zone was created
modified_onstringISO 8601 date when the zone was last modified
activated_onstringISO 8601 date when the zone was activated
development_modenumberSeconds remaining in development mode (0 = off)
planobjectZone plan information
↳ idstringPlan identifier
↳ namestringPlan name
↳ pricenumberPlan price
↳ is_subscribedbooleanWhether the zone is subscribed to the plan
↳ frequencystringPlan billing frequency
↳ currencystringPlan currency
↳ legacy_idstringLegacy plan identifier
accountobjectAccount the zone belongs to
↳ idstringAccount identifier
↳ namestringAccount name
ownerobjectZone owner information
↳ idstringOwner identifier
↳ namestringOwner name
↳ typestringOwner type
metaobjectZone metadata
↳ cdn_onlybooleanWhether the zone is CDN only
↳ custom_certificate_quotanumberCustom certificate quota
↳ dns_onlybooleanWhether the zone is DNS only
↳ foundation_dnsbooleanWhether foundation DNS is enabled
↳ page_rule_quotanumberPage rule quota
↳ phishing_detectedbooleanWhether phishing was detected
↳ stepnumberCurrent setup step
vanity_name_serversarrayCustom vanity name servers
permissionsarrayUser permissions for the zone

cloudflare_create_zone

Adds a new zone (domain) to the Cloudflare account.

Input

ParameterTypeRequiredDescription
namestringYesThe domain name to add (e.g., "example.com")
accountIdstringYesThe Cloudflare account ID
typestringNoZone type: "full" (Cloudflare manages DNS), "partial" (CNAME setup), or "secondary" (secondary DNS)
jump_startbooleanNoAutomatically attempt to fetch existing DNS records when creating the zone
apiKeystringYesCloudflare API Token

Output

ParameterTypeDescription
idstringCreated zone ID
namestringDomain name
statusstringZone status (initializing, pending, active, moved)
pausedbooleanWhether the zone is paused
typestringZone type (full, partial, or secondary)
name_serversarrayAssigned Cloudflare name servers
original_name_serversarrayOriginal name servers before moving to Cloudflare
created_onstringISO 8601 date when the zone was created
modified_onstringISO 8601 date when the zone was last modified
activated_onstringISO 8601 date when the zone was activated
development_modenumberSeconds remaining in development mode (0 = off)
planobjectZone plan information
↳ idstringPlan identifier
↳ namestringPlan name
↳ pricenumberPlan price
↳ is_subscribedbooleanWhether the zone is subscribed to the plan
↳ frequencystringPlan billing frequency
↳ currencystringPlan currency
↳ legacy_idstringLegacy plan identifier
accountobjectAccount the zone belongs to
↳ idstringAccount identifier
↳ namestringAccount name
ownerobjectZone owner information
↳ idstringOwner identifier
↳ namestringOwner name
↳ typestringOwner type
metaobjectZone metadata
↳ cdn_onlybooleanWhether the zone is CDN only
↳ custom_certificate_quotanumberCustom certificate quota
↳ dns_onlybooleanWhether the zone is DNS only
↳ foundation_dnsbooleanWhether foundation DNS is enabled
↳ page_rule_quotanumberPage rule quota
↳ phishing_detectedbooleanWhether phishing was detected
↳ stepnumberCurrent setup step
vanity_name_serversarrayCustom vanity name servers
permissionsarrayUser permissions for the zone

cloudflare_delete_zone

Deletes a zone (domain) from the Cloudflare account.

Input

ParameterTypeRequiredDescription
zoneIdstringYesThe zone ID to delete
apiKeystringYesCloudflare API Token

Output

ParameterTypeDescription
idstringDeleted zone ID

cloudflare_list_dns_records

Lists DNS records for a specific zone.

Input

ParameterTypeRequiredDescription
zoneIdstringYesThe zone ID to list DNS records for
typestringNoFilter by record type (e.g., "A", "AAAA", "CNAME", "MX", "TXT")
namestringNoFilter by record name (exact match)
contentstringNoFilter by record content (exact match)
pagenumberNoPage number for pagination (default: 1)
per_pagenumberNoNumber of records per page (default: 100, max: 5000000)
directionstringNoSort direction (asc or desc)
matchstringNoMatch logic for filters: any or all (default: all)
orderstringNoSort field (type, name, content, ttl, proxied)
proxiedbooleanNoFilter by proxy status
searchstringNoFree-text search across record name, content, and value
tagstringNoFilter by tags (comma-separated)
tag_matchstringNoTag filter match logic: any or all
commentFilterstringNoFilter records by comment content (substring match)
apiKeystringYesCloudflare API Token

Output

ParameterTypeDescription
recordsarrayList of DNS records
↳ idstringUnique identifier for the DNS record
↳ zone_idstringThe ID of the zone the record belongs to
↳ zone_namestringThe name of the zone
↳ typestringRecord type (A, AAAA, CNAME, MX, TXT, etc.)
↳ namestringRecord name (e.g., example.com)
↳ contentstringRecord content (e.g., IP address)
↳ proxiablebooleanWhether the record can be proxied
↳ proxiedbooleanWhether Cloudflare proxy is enabled
↳ ttlnumberTTL in seconds (1 = automatic)
↳ lockedbooleanWhether the record is locked
↳ prioritynumberMX/SRV record priority
↳ commentstringComment associated with the record
↳ tagsarrayTags associated with the record
↳ comment_modified_onstringISO 8601 timestamp when the comment was last modified
↳ tags_modified_onstringISO 8601 timestamp when tags were last modified
↳ metaobjectRecord metadata
↳ sourcestringSource of the DNS record
↳ created_onstringISO 8601 timestamp when the record was created
↳ modified_onstringISO 8601 timestamp when the record was last modified
total_countnumberTotal number of DNS records matching the query

cloudflare_create_dns_record

Creates a new DNS record for a zone.

Input

ParameterTypeRequiredDescription
zoneIdstringYesThe zone ID to create the DNS record in
typestringYesDNS record type (e.g., "A", "AAAA", "CNAME", "MX", "TXT", "NS", "SRV")
namestringYesDNS record name (e.g., "example.com" or "subdomain.example.com")
contentstringYesDNS record content (e.g., IP address for A records, target for CNAME)
ttlnumberNoTime to live in seconds (1 = automatic, default: 1)
proxiedbooleanNoWhether to enable Cloudflare proxy (default: false)
prioritynumberNoPriority for MX and SRV records
commentstringNoComment for the DNS record
tagsstringNoComma-separated tags for the DNS record
apiKeystringYesCloudflare API Token

Output

ParameterTypeDescription
idstringUnique identifier for the created DNS record
zone_idstringThe ID of the zone the record belongs to
zone_namestringThe name of the zone
typestringDNS record type (A, AAAA, CNAME, MX, TXT, etc.)
namestringDNS record hostname
contentstringDNS record value (e.g., IP address, target hostname)
proxiablebooleanWhether the record can be proxied through Cloudflare
proxiedbooleanWhether Cloudflare proxy is enabled
ttlnumberTime to live in seconds (1 = automatic)
lockedbooleanWhether the record is locked
prioritynumberPriority for MX and SRV records
commentstringComment associated with the record
tagsarrayTags associated with the record
comment_modified_onstringISO 8601 timestamp when the comment was last modified
tags_modified_onstringISO 8601 timestamp when tags were last modified
metaobjectRecord metadata
↳ sourcestringSource of the DNS record
created_onstringISO 8601 timestamp when the record was created
modified_onstringISO 8601 timestamp when the record was last modified

cloudflare_update_dns_record

Updates an existing DNS record for a zone.

Input

ParameterTypeRequiredDescription
zoneIdstringYesThe zone ID containing the DNS record
recordIdstringYesThe DNS record ID to update
typestringNoDNS record type (e.g., "A", "AAAA", "CNAME", "MX", "TXT")
namestringNoDNS record name
contentstringNoDNS record content (e.g., IP address)
ttlnumberNoTime to live in seconds (1 = automatic)
proxiedbooleanNoWhether to enable Cloudflare proxy
prioritynumberNoPriority for MX and SRV records
commentstringNoComment for the DNS record
tagsstringNoComma-separated tags for the DNS record
apiKeystringYesCloudflare API Token

Output

ParameterTypeDescription
idstringUnique identifier for the updated DNS record
zone_idstringThe ID of the zone the record belongs to
zone_namestringThe name of the zone
typestringDNS record type (A, AAAA, CNAME, MX, TXT, etc.)
namestringDNS record hostname
contentstringDNS record value (e.g., IP address, target hostname)
proxiablebooleanWhether the record can be proxied through Cloudflare
proxiedbooleanWhether Cloudflare proxy is enabled
ttlnumberTime to live in seconds (1 = automatic)
lockedbooleanWhether the record is locked
prioritynumberPriority for MX and SRV records
commentstringComment associated with the record
tagsarrayTags associated with the record
comment_modified_onstringISO 8601 timestamp when the comment was last modified
tags_modified_onstringISO 8601 timestamp when tags were last modified
metaobjectRecord metadata
↳ sourcestringSource of the DNS record
created_onstringISO 8601 timestamp when the record was created
modified_onstringISO 8601 timestamp when the record was last modified

cloudflare_delete_dns_record

Deletes a DNS record from a zone.

Input

ParameterTypeRequiredDescription
zoneIdstringYesThe zone ID containing the DNS record
recordIdstringYesThe DNS record ID to delete
apiKeystringYesCloudflare API Token

Output

ParameterTypeDescription
idstringDeleted record ID

cloudflare_list_certificates

Lists SSL/TLS certificate packs for a zone.

Input

ParameterTypeRequiredDescription
zoneIdstringYesThe zone ID to list certificates for
statusstringNoFilter certificate packs by status (e.g., "all", "active", "pending")
pagenumberNoPage number of paginated results (default: 1)
per_pagenumberNoNumber of certificate packs per page (default: 20, min: 5, max: 50)
deploystringNoFilter by deployment environment: "staging" or "production"
apiKeystringYesCloudflare API Token

Output

ParameterTypeDescription
certificatesarrayList of SSL/TLS certificate packs
↳ idstringCertificate pack ID
↳ typestringCertificate type (e.g., "universal", "advanced")
↳ hostsarrayHostnames covered by this certificate pack
↳ primary_certificatestringID of the primary certificate in the pack
↳ statusstringCertificate pack status (e.g., "active", "pending")
↳ certificatesarrayIndividual certificates within the pack
↳ idstringCertificate ID
↳ hostsarrayHostnames covered by this certificate
↳ issuerstringCertificate issuer
↳ signaturestringSignature algorithm (e.g., "ECDSAWithSHA256")
↳ statusstringCertificate status
↳ bundle_methodstringBundle method (e.g., "ubiquitous")
↳ zone_idstringZone ID the certificate belongs to
↳ uploaded_onstringUpload date (ISO 8601)
↳ modified_onstringLast modified date (ISO 8601)
↳ expires_onstringExpiration date (ISO 8601)
↳ prioritynumberCertificate priority order
↳ geo_restrictionsobjectGeographic restrictions for the certificate
↳ labelstringGeographic restriction label
↳ cloudflare_brandingbooleanWhether Cloudflare branding is enabled on the certificate
↳ validation_methodstringValidation method (e.g., "txt", "http", "cname")
↳ validity_daysnumberValidity period in days
↳ certificate_authoritystringCertificate authority (e.g., "lets_encrypt", "google")
↳ validation_errorsarrayValidation issues for the certificate pack
↳ messagestringValidation error message
↳ validation_recordsarrayValidation records for the certificate pack
↳ cnamestringCNAME record name
↳ cname_targetstringCNAME record target
↳ emailsarrayEmail addresses for validation
↳ http_bodystringHTTP validation body content
↳ http_urlstringHTTP validation URL
↳ statusstringValidation record status
↳ txt_namestringTXT record name
↳ txt_valuestringTXT record value
↳ dcv_delegation_recordsarrayDomain control validation delegation records
↳ cnamestringCNAME record name
↳ cname_targetstringCNAME record target
↳ emailsarrayEmail addresses for validation
↳ http_bodystringHTTP validation body content
↳ http_urlstringHTTP validation URL
↳ statusstringDelegation record status
↳ txt_namestringTXT record name
↳ txt_valuestringTXT record value
total_countnumberTotal number of certificate packs

cloudflare_get_zone_settings

Gets all settings for a zone including SSL mode, minification, caching level, and security settings.

Input

ParameterTypeRequiredDescription
zoneIdstringYesThe zone ID to get settings for
apiKeystringYesCloudflare API Token

Output

ParameterTypeDescription
settingsarrayList of zone settings
↳ idstringSetting identifier (e.g., ssl, minify, cache_level, security_level, always_use_https)
↳ valuestringSetting value as a string. Simple values returned as-is (e.g., "full", "on"). Complex values are JSON-stringified (e.g., \
↳ editablebooleanWhether the setting can be modified for the current zone plan
↳ modified_onstringISO 8601 timestamp when the setting was last modified
↳ time_remainingnumberSeconds remaining until the setting can be modified again (only present for rate-limited settings)

cloudflare_update_zone_setting

Updates a specific zone setting such as SSL mode, security level, cache level, minification, or other configuration.

Input

ParameterTypeRequiredDescription
zoneIdstringYesThe zone ID to update settings for
settingIdstringYesSetting to update (e.g., "ssl", "security_level", "cache_level", "minify", "always_use_https", "browser_cache_ttl", "http3", "min_tls_version", "ciphers")
valuestringYesNew value for the setting as a string or JSON string for complex values (e.g., "full" for SSL, "medium" for security_level, "aggressive" for cache_level, '{"css":"on","html":"on","js":"on"}' for minify, '["ECDHE-RSA-AES128-GCM-SHA256"]' for ciphers)
apiKeystringYesCloudflare API Token

Output

ParameterTypeDescription
idstringSetting identifier (e.g., ssl, minify, cache_level)
valuestringUpdated setting value as a string. Simple values returned as-is (e.g., "full", "on"). Complex values are JSON-stringified.
editablebooleanWhether the setting can be modified for the current zone plan
modified_onstringISO 8601 timestamp when the setting was last modified
time_remainingnumberSeconds remaining until the setting can be modified again (only present for rate-limited settings)

cloudflare_dns_analytics

Gets DNS analytics report for a zone including query counts and trends.

Input

ParameterTypeRequiredDescription
zoneIdstringYesThe zone ID to get DNS analytics for
sincestringNoStart date for analytics (ISO 8601, e.g., "2024-01-01T00:00:00Z") or relative (e.g., "-6h")
untilstringNoEnd date for analytics (ISO 8601, e.g., "2024-01-31T23:59:59Z") or relative (e.g., "now")
metricsstringYesComma-separated metrics to retrieve (e.g., "queryCount,uncachedCount,staleCount,responseTimeAvg,responseTimeMedian,responseTime90th,responseTime99th")
dimensionsstringNoComma-separated dimensions to group by (e.g., "queryName,queryType,responseCode,responseCached,coloName,origin,dayOfWeek,tcp,ipVersion,querySizeBucket,responseSizeBucket")
filtersstringNoFilters to apply to the data (e.g., "queryType==A")
sortstringNoSort order for the result set. Fields must be included in metrics or dimensions (e.g., "+queryCount" or "-responseTimeAvg")
limitnumberNoMaximum number of results to return
apiKeystringYesCloudflare API Token

Output

ParameterTypeDescription
totalsobjectAggregate DNS analytics totals for the entire queried period
↳ queryCountnumberTotal number of DNS queries
↳ uncachedCountnumberNumber of uncached DNS queries
↳ staleCountnumberNumber of stale DNS queries
↳ responseTimeAvgnumberAverage response time in milliseconds
↳ responseTimeMediannumberMedian response time in milliseconds
↳ responseTime90thnumber90th percentile response time in milliseconds
↳ responseTime99thnumber99th percentile response time in milliseconds
minobjectMinimum values across the analytics period
↳ queryCountnumberMinimum number of DNS queries
↳ uncachedCountnumberMinimum number of uncached DNS queries
↳ staleCountnumberMinimum number of stale DNS queries
↳ responseTimeAvgnumberMinimum average response time in milliseconds
↳ responseTimeMediannumberMinimum median response time in milliseconds
↳ responseTime90thnumberMinimum 90th percentile response time in milliseconds
↳ responseTime99thnumberMinimum 99th percentile response time in milliseconds
maxobjectMaximum values across the analytics period
↳ queryCountnumberMaximum number of DNS queries
↳ uncachedCountnumberMaximum number of uncached DNS queries
↳ staleCountnumberMaximum number of stale DNS queries
↳ responseTimeAvgnumberMaximum average response time in milliseconds
↳ responseTimeMediannumberMaximum median response time in milliseconds
↳ responseTime90thnumberMaximum 90th percentile response time in milliseconds
↳ responseTime99thnumberMaximum 99th percentile response time in milliseconds
dataarrayRaw analytics data rows returned by the Cloudflare DNS analytics report
↳ dimensionsarrayDimension values for this data row, parallel to the requested dimensions list
↳ metricsarrayMetric values for this data row, parallel to the requested metrics list
data_lagnumberProcessing lag in seconds before analytics data becomes available
rowsnumberTotal number of rows in the result set
queryobjectEcho of the query parameters sent to the API
↳ sincestringStart date of the analytics query
↳ untilstringEnd date of the analytics query
↳ metricsarrayMetrics requested in the query
↳ dimensionsarrayDimensions requested in the query
↳ filtersstringFilters applied to the query
↳ sortarraySort order applied to the query
↳ limitnumberMaximum number of results requested

cloudflare_purge_cache

Purges cached content for a zone. Can purge everything or specific files/tags/hosts/prefixes.

Input

ParameterTypeRequiredDescription
zoneIdstringYesThe zone ID to purge cache for
purge_everythingbooleanNoSet to true to purge all cached content. Mutually exclusive with files, tags, hosts, and prefixes
filesstringNoComma-separated list of URLs to purge from cache
tagsstringNoComma-separated list of cache tags to purge (Enterprise only)
hostsstringNoComma-separated list of hostnames to purge (Enterprise only)
prefixesstringNoComma-separated list of URL prefixes to purge (Enterprise only)
apiKeystringYesCloudflare API Token

Output

ParameterTypeDescription
idstringPurge request identifier returned by Cloudflare

On this page