// Auto-generated by scripts/generate-api-spec-index.ts - DO NOT EDIT import type { ApiCatalogCategory, ApiCatalogCategorySummary, ApiCatalogIndex } from "./api-catalog-types"; export const API_CATALOG_INDEX: ApiCatalogIndex = { version: "4.0.0", displayName: "F5 Distributed Cloud", service: "f5xc", categoryCount: 889, auth: { "type": "api_token", "headerName": "Authorization", "headerTemplate": "APIToken {token}", "tokenSource": "F5XC_API_TOKEN", "baseUrlSource": "F5XC_API_URL" }, defaults: { "namespace": { "source": "F5XC_NAMESPACE" } }, }; export const API_CATALOG_CATEGORY_SUMMARIES: ReadonlyArray = [ { "name": "access-logs", "displayName": "Access Logs", "operationCount": 1 }, { "name": "active-alert-policies", "displayName": "Active Alert Policies", "operationCount": 2 }, { "name": "active-network-policies", "displayName": "Active Network Policies", "operationCount": 2 }, { "name": "active-service-policies", "displayName": "Active Service Policies", "operationCount": 2 }, { "name": "active-staged-signatures", "displayName": "Active Staged Signatures", "operationCount": 1 }, { "name": "addon-services", "displayName": "Addon Services", "operationCount": 2 }, { "name": "addon-services-activation-status", "displayName": "Addon Services Activation Status", "operationCount": 1 }, { "name": "addon-services-all-activation-status", "displayName": "Addon Services All Activation Status", "operationCount": 1 }, { "name": "addon-subscribe", "displayName": "Addon Subscribe", "operationCount": 1 }, { "name": "addon-subscriptions", "displayName": "Addon Subscriptions", "operationCount": 5 }, { "name": "addon-unsubscribe", "displayName": "Addon Unsubscribe", "operationCount": 1 }, { "name": "address-allocators", "displayName": "Address Allocators", "operationCount": 4 }, { "name": "advertise-policys", "displayName": "Advertise Policys", "operationCount": 5 }, { "name": "aggregation", "displayName": "Aggregation", "operationCount": 1 }, { "name": "ai-data-bfdp-bfdp-enable-feature", "displayName": "Ai Data Bfdp Bfdp Enable Feature", "operationCount": 1 }, { "name": "ai-data-bfdp-bfdp-gettoken", "displayName": "Ai Data Bfdp Bfdp Gettoken", "operationCount": 1 }, { "name": "ai-data-bfdp-bfdp-refresh-token", "displayName": "Ai Data Bfdp Bfdp Refresh Token", "operationCount": 1 }, { "name": "ai-data-bfdp-bfdp-subscribe", "displayName": "Ai Data Bfdp Bfdp Subscribe", "operationCount": 1 }, { "name": "ai-data-bfdp-bfdp-unsubscribe", "displayName": "Ai Data Bfdp Bfdp Unsubscribe", "operationCount": 1 }, { "name": "alert-confirm", "displayName": "Alert Confirm", "operationCount": 1 }, { "name": "alert-match", "displayName": "Alert Match", "operationCount": 1 }, { "name": "alert-policys", "displayName": "Alert Policys", "operationCount": 5 }, { "name": "alert-receivers", "displayName": "Alert Receivers", "operationCount": 5 }, { "name": "alert-test", "displayName": "Alert Test", "operationCount": 1 }, { "name": "alert-verify", "displayName": "Alert Verify", "operationCount": 1 }, { "name": "alerts", "displayName": "Alerts", "operationCount": 1 }, { "name": "all-application-inventory", "displayName": "All Application Inventory", "operationCount": 1 }, { "name": "all-application-inventory-waf-filters", "displayName": "All Application Inventory Waf Filters", "operationCount": 1 }, { "name": "all-ns-alerts", "displayName": "All Ns Alerts", "operationCount": 1 }, { "name": "allowed-tenants", "displayName": "Allowed Tenants", "operationCount": 5 }, { "name": "allowed-tenants-support-tenant-access", "displayName": "Allowed Tenants Support Tenant Access", "operationCount": 2 }, { "name": "api-crawlers", "displayName": "Api Crawlers", "operationCount": 5 }, { "name": "api-credentials", "displayName": "Api Credentials", "operationCount": 3 }, { "name": "api-definitions", "displayName": "Api Definitions", "operationCount": 5 }, { "name": "api-definitions-assign", "displayName": "Api Definitions Assign", "operationCount": 1 }, { "name": "api-definitions-available", "displayName": "Api Definitions Available", "operationCount": 1 }, { "name": "api-definitions-without-shared", "displayName": "Api Definitions Without Shared", "operationCount": 1 }, { "name": "api-discoverys", "displayName": "Api Discoverys", "operationCount": 5 }, { "name": "api-endpoint", "displayName": "Api Endpoint", "operationCount": 1 }, { "name": "api-endpoint-learnt-schema", "displayName": "Api Endpoint Learnt Schema", "operationCount": 2 }, { "name": "api-endpoint-pdf", "displayName": "Api Endpoint Pdf", "operationCount": 1 }, { "name": "api-endpoint-protection-suggestion", "displayName": "Api Endpoint Protection Suggestion", "operationCount": 1 }, { "name": "api-endpoint-sources-openapi-schema", "displayName": "Api Endpoint Sources Openapi Schema", "operationCount": 1 }, { "name": "api-endpoint-unmerge-sources-openapi-schema", "displayName": "Api Endpoint Unmerge Sources Openapi Schema", "operationCount": 1 }, { "name": "api-endpoints", "displayName": "Api Endpoints", "operationCount": 2 }, { "name": "api-endpoints-all-ns-stats", "displayName": "Api Endpoints All Ns Stats", "operationCount": 1 }, { "name": "api-endpoints-stats", "displayName": "Api Endpoints Stats", "operationCount": 1 }, { "name": "api-endpoints-summary-calls-by-response-code", "displayName": "Api Endpoints Summary Calls By Response Code", "operationCount": 1 }, { "name": "api-endpoints-summary-top-active", "displayName": "Api Endpoints Summary Top Active", "operationCount": 1 }, { "name": "api-endpoints-summary-top-sensitive-data", "displayName": "Api Endpoints Summary Top Sensitive Data", "operationCount": 1 }, { "name": "api-endpoints-swagger-spec", "displayName": "Api Endpoints Swagger Spec", "operationCount": 1 }, { "name": "api-group-elements", "displayName": "Api Group Elements", "operationCount": 2 }, { "name": "api-groups", "displayName": "Api Groups", "operationCount": 2 }, { "name": "api-inventory-api-endpoints-get-schema-updates", "displayName": "Api Inventory Api Endpoints Get Schema Updates", "operationCount": 1 }, { "name": "api-inventory-api-endpoints-update-schemas", "displayName": "Api Inventory Api Endpoints Update Schemas", "operationCount": 1 }, { "name": "api-testings", "displayName": "Api Testings", "operationCount": 5 }, { "name": "app-api-groups", "displayName": "App Api Groups", "operationCount": 5 }, { "name": "app-firewall-all-ns-metrics", "displayName": "App Firewall All Ns Metrics", "operationCount": 1 }, { "name": "app-firewalls", "displayName": "App Firewalls", "operationCount": 5 }, { "name": "app-security-all-ns-events", "displayName": "App Security All Ns Events", "operationCount": 1 }, { "name": "app-security-all-ns-events-aggregation", "displayName": "App Security All Ns Events Aggregation", "operationCount": 1 }, { "name": "app-security-all-ns-search-loadbalancers", "displayName": "App Security All Ns Search Loadbalancers", "operationCount": 1 }, { "name": "app-settings", "displayName": "App Settings", "operationCount": 5 }, { "name": "app-types", "displayName": "App Types", "operationCount": 5 }, { "name": "application-inventory", "displayName": "Application Inventory", "operationCount": 1 }, { "name": "application-profiless", "displayName": "Application Profiless", "operationCount": 5 }, { "name": "associated-objects", "displayName": "Associated Objects", "operationCount": 1 }, { "name": "audit-logs", "displayName": "Audit Logs", "operationCount": 1 }, { "name": "authentications", "displayName": "Authentications", "operationCount": 5 }, { "name": "authorization-servers", "displayName": "Authorization Servers", "operationCount": 5 }, { "name": "aws-tgw-sites", "displayName": "Aws Tgw Sites", "operationCount": 5 }, { "name": "aws-vpc-sites", "displayName": "Aws Vpc Sites", "operationCount": 5 }, { "name": "azure-vnet-sites", "displayName": "Azure Vnet Sites", "operationCount": 5 }, { "name": "bgp-asn-sets", "displayName": "Bgp Asn Sets", "operationCount": 5 }, { "name": "bgp-peer-status", "displayName": "Bgp Peer Status", "operationCount": 1 }, { "name": "bgp-routing-policys", "displayName": "Bgp Routing Policys", "operationCount": 5 }, { "name": "bgps", "displayName": "Bgps", "operationCount": 5 }, { "name": "bgpstatus", "displayName": "Bgpstatus", "operationCount": 1 }, { "name": "bigip-http-proxys", "displayName": "Bigip Http Proxys", "operationCount": 5 }, { "name": "bigip-virtual-servers", "displayName": "Bigip Virtual Servers", "operationCount": 3 }, { "name": "bigipconnector", "displayName": "Bigipconnector", "operationCount": 5 }, { "name": "bigipconnector-applications-discovered", "displayName": "Bigipconnector Applications Discovered", "operationCount": 1 }, { "name": "billing-usage-details", "displayName": "Billing Usage Details", "operationCount": 1 }, { "name": "billing-usage-summary", "displayName": "Billing Usage Summary", "operationCount": 1 }, { "name": "block-client-suggestion", "displayName": "Block Client Suggestion", "operationCount": 1 }, { "name": "bot-defense-app-infrastructures", "displayName": "Bot Defense App Infrastructures", "operationCount": 5 }, { "name": "bulk-revoke-api-credentials", "displayName": "Bulk Revoke Api Credentials", "operationCount": 1 }, { "name": "bulk-revoke-service-credentials", "displayName": "Bulk Revoke Service Credentials", "operationCount": 1 }, { "name": "ca-certificate", "displayName": "Ca Certificate", "operationCount": 1 }, { "name": "cascade-delete", "displayName": "Cascade Delete", "operationCount": 1 }, { "name": "catalogs", "displayName": "Catalogs", "operationCount": 1 }, { "name": "cdn-access-logs", "displayName": "Cdn Access Logs", "operationCount": 1 }, { "name": "cdn-access-logs-aggregation", "displayName": "Cdn Access Logs Aggregation", "operationCount": 1 }, { "name": "cdn-cache-purge", "displayName": "Cdn Cache Purge", "operationCount": 1 }, { "name": "cdn-cache-rules", "displayName": "Cdn Cache Rules", "operationCount": 5 }, { "name": "cdn-get-service-operation-status", "displayName": "Cdn Get Service Operation Status", "operationCount": 1 }, { "name": "cdn-lilac-cdn-addon-subscribe", "displayName": "Cdn Lilac Cdn Addon Subscribe", "operationCount": 1 }, { "name": "cdn-lilac-cdn-addon-unsubscribe", "displayName": "Cdn Lilac Cdn Addon Unsubscribe", "operationCount": 1 }, { "name": "cdn-list-service-operations-status", "displayName": "Cdn List Service Operations Status", "operationCount": 1 }, { "name": "cdn-loadbalancers", "displayName": "Cdn Loadbalancers", "operationCount": 5 }, { "name": "cdn-metrics", "displayName": "Cdn Metrics", "operationCount": 1 }, { "name": "cdn-purge-commands", "displayName": "Cdn Purge Commands", "operationCount": 4 }, { "name": "certificate-chains", "displayName": "Certificate Chains", "operationCount": 5 }, { "name": "certificates", "displayName": "Certificates", "operationCount": 5 }, { "name": "certified-hardwares", "displayName": "Certified Hardwares", "operationCount": 2 }, { "name": "child-tenant-managers", "displayName": "Child Tenant Managers", "operationCount": 5 }, { "name": "child-tenant-support-tickets", "displayName": "Child Tenant Support Tickets", "operationCount": 1 }, { "name": "child-tenants", "displayName": "Child Tenants", "operationCount": 5 }, { "name": "close", "displayName": "Close", "operationCount": 1 }, { "name": "cloud-connects", "displayName": "Cloud Connects", "operationCount": 5 }, { "name": "cloud-connects-metrics", "displayName": "Cloud Connects Metrics", "operationCount": 1 }, { "name": "cloud-connects-segment-metrics", "displayName": "Cloud Connects Segment Metrics", "operationCount": 1 }, { "name": "cloud-credentialss", "displayName": "Cloud Credentialss", "operationCount": 5 }, { "name": "cloud-data-cloud-user-accounts-onboarded-networks", "displayName": "Cloud Data Cloud User Accounts Onboarded Networks", "operationCount": 1 }, { "name": "cloud-data-cloud-user-accounts-validate", "displayName": "Cloud Data Cloud User Accounts Validate", "operationCount": 1 }, { "name": "cloud-data-suggest-values", "displayName": "Cloud Data Suggest Values", "operationCount": 1 }, { "name": "cloud-elastic-ip-force-delete", "displayName": "Cloud Elastic Ip Force Delete", "operationCount": 1 }, { "name": "cloud-elastic-ips", "displayName": "Cloud Elastic Ips", "operationCount": 5 }, { "name": "cloud-links", "displayName": "Cloud Links", "operationCount": 5 }, { "name": "cloud-links-reapply-config", "displayName": "Cloud Links Reapply Config", "operationCount": 1 }, { "name": "cloud-regions", "displayName": "Cloud Regions", "operationCount": 3 }, { "name": "clusters", "displayName": "Clusters", "operationCount": 5 }, { "name": "cminstances", "displayName": "Cminstances", "operationCount": 5 }, { "name": "code-base-integrations", "displayName": "Code Base Integrations", "operationCount": 5 }, { "name": "comment", "displayName": "Comment", "operationCount": 1 }, { "name": "connectivity", "displayName": "Connectivity", "operationCount": 1 }, { "name": "connectivity-edge", "displayName": "Connectivity Edge", "operationCount": 1 }, { "name": "connectivity-node", "displayName": "Connectivity Node", "operationCount": 1 }, { "name": "contacts", "displayName": "Contacts", "operationCount": 5 }, { "name": "container-registrys", "displayName": "Container Registrys", "operationCount": 5 }, { "name": "create", "displayName": "Create", "operationCount": 1 }, { "name": "create-ticket", "displayName": "Create Ticket", "operationCount": 1 }, { "name": "crls", "displayName": "Crls", "operationCount": 5 }, { "name": "current-usage", "displayName": "Current Usage", "operationCount": 1 }, { "name": "custom", "displayName": "Custom", "operationCount": 4 }, { "name": "custom-addon-services", "displayName": "Custom Addon Services", "operationCount": 1 }, { "name": "custom-cascade-delete", "displayName": "Custom Cascade Delete", "operationCount": 1 }, { "name": "custom-countries", "displayName": "Custom Countries", "operationCount": 1 }, { "name": "custom-countries-states", "displayName": "Custom Countries States", "operationCount": 1 }, { "name": "custom-countries-states-cities", "displayName": "Custom Countries States Cities", "operationCount": 1 }, { "name": "custom-dashboards-current-layout", "displayName": "Custom Dashboards Current Layout", "operationCount": 1 }, { "name": "custom-dashboards-layouts", "displayName": "Custom Dashboards Layouts", "operationCount": 5 }, { "name": "custom-delete", "displayName": "Custom Delete", "operationCount": 1 }, { "name": "custom-idm-user-sync", "displayName": "Custom Idm User Sync", "operationCount": 1 }, { "name": "custom-list", "displayName": "Custom List", "operationCount": 1 }, { "name": "custom-mappers", "displayName": "Custom Mappers", "operationCount": 2 }, { "name": "custom-password-admin-reset", "displayName": "Custom Password Admin Reset", "operationCount": 1 }, { "name": "custom-password-reset", "displayName": "Custom Password Reset", "operationCount": 1 }, { "name": "custom-scim", "displayName": "Custom Scim", "operationCount": 1 }, { "name": "custom-user-groups", "displayName": "Custom User Groups", "operationCount": 5 }, { "name": "custom-user-groups-analyze-for-deletion", "displayName": "Custom User Groups Analyze For Deletion", "operationCount": 1 }, { "name": "custom-user-groups-assign-namespace-roles", "displayName": "Custom User Groups Assign Namespace Roles", "operationCount": 1 }, { "name": "custom-user-groups-remove-namespace-roles", "displayName": "Custom User Groups Remove Namespace Roles", "operationCount": 1 }, { "name": "custom-users-group-add", "displayName": "Custom Users Group Add", "operationCount": 1 }, { "name": "custom-users-group-remove", "displayName": "Custom Users Group Remove", "operationCount": 1 }, { "name": "customer-data", "displayName": "Customer Data", "operationCount": 2 }, { "name": "customer-support-comment-attachment", "displayName": "Customer Support Comment Attachment", "operationCount": 1 }, { "name": "customer-support-tax-exempt-request", "displayName": "Customer Support Tax Exempt Request", "operationCount": 1 }, { "name": "customer-supports", "displayName": "Customer Supports", "operationCount": 3 }, { "name": "data-exposure-suggestion", "displayName": "Data Exposure Suggestion", "operationCount": 1 }, { "name": "data-groups", "displayName": "Data Groups", "operationCount": 5 }, { "name": "data-intelligence", "displayName": "Data Intelligence", "operationCount": 5 }, { "name": "data-intelligence-data-intelligence-addon-subscribe", "displayName": "Data Intelligence Data Intelligence Addon Subscribe", "operationCount": 1 }, { "name": "data-intelligence-data-intelligence-addon-unsubscribe", "displayName": "Data Intelligence Data Intelligence Addon Unsubscribe", "operationCount": 1 }, { "name": "data-intelligence-dataSets", "displayName": "Data Intelligence Datasets", "operationCount": 1 }, { "name": "data-intelligence-datadictionary", "displayName": "Data Intelligence Datadictionary", "operationCount": 1 }, { "name": "data-intelligence-datasets", "displayName": "Data Intelligence Datasets", "operationCount": 1 }, { "name": "data-intelligence-flowlabels", "displayName": "Data Intelligence Flowlabels", "operationCount": 1 }, { "name": "data-intelligence-init-request", "displayName": "Data Intelligence Init Request", "operationCount": 1 }, { "name": "data-intelligence-status", "displayName": "Data Intelligence Status", "operationCount": 1 }, { "name": "data-intelligence-summary", "displayName": "Data Intelligence Summary", "operationCount": 1 }, { "name": "data-intelligence-test", "displayName": "Data Intelligence Test", "operationCount": 1 }, { "name": "data-types", "displayName": "Data Types", "operationCount": 5 }, { "name": "dc-cluster-groups", "displayName": "Dc Cluster Groups", "operationCount": 5 }, { "name": "ddos-mitigation-suggestion", "displayName": "Ddos Mitigation Suggestion", "operationCount": 1 }, { "name": "delete", "displayName": "Delete", "operationCount": 1 }, { "name": "discovery", "displayName": "Discovery", "operationCount": 3 }, { "name": "discovery-create-http-load-balancer", "displayName": "Discovery Create Http Load Balancer", "operationCount": 1 }, { "name": "discovery-create-tcp-load-balancer", "displayName": "Discovery Create Tcp Load Balancer", "operationCount": 1 }, { "name": "discovery-custom", "displayName": "Discovery Custom", "operationCount": 1 }, { "name": "discovery-disable-visibility", "displayName": "Discovery Disable Visibility", "operationCount": 1 }, { "name": "discovery-enable-visibility", "displayName": "Discovery Enable Visibility", "operationCount": 1 }, { "name": "discoverys", "displayName": "Discoverys", "operationCount": 5 }, { "name": "dns", "displayName": "Dns", "operationCount": 5 }, { "name": "dns-compliance-checkss", "displayName": "Dns Compliance Checkss", "operationCount": 5 }, { "name": "dns-dns-management-addon-subscribe", "displayName": "Dns Dns Management Addon Subscribe", "operationCount": 1 }, { "name": "dns-dns-management-addon-unsubscribe", "displayName": "Dns Dns Management Addon Unsubscribe", "operationCount": 1 }, { "name": "dns-dns-zone-clone-from-dns-domain", "displayName": "Dns Dns Zone Clone From Dns Domain", "operationCount": 1 }, { "name": "dns-dns-zone-import", "displayName": "Dns Dns Zone Import", "operationCount": 1 }, { "name": "dns-dns-zone-import-axfr", "displayName": "Dns Dns Zone Import Axfr", "operationCount": 1 }, { "name": "dns-dns-zone-import-bind-create", "displayName": "Dns Dns Zone Import Bind Create", "operationCount": 1 }, { "name": "dns-dns-zone-import-bind-validate", "displayName": "Dns Dns Zone Import Bind Validate", "operationCount": 1 }, { "name": "dns-dns-zone-initiate-zone-transfer", "displayName": "Dns Dns Zone Initiate Zone Transfer", "operationCount": 1 }, { "name": "dns-dns-zones-rrsets", "displayName": "Dns Dns Zones Rrsets", "operationCount": 4 }, { "name": "dns-domains", "displayName": "Dns Domains", "operationCount": 5 }, { "name": "dns-lb-pools-health-status", "displayName": "Dns Lb Pools Health Status", "operationCount": 1 }, { "name": "dns-lb-pools-pool-members-health-status-change-events", "displayName": "Dns Lb Pools Pool Members Health Status Change Events", "operationCount": 1 }, { "name": "dns-local-zone-file", "displayName": "Dns Local Zone File", "operationCount": 1 }, { "name": "dns-local-zone-record-names", "displayName": "Dns Local Zone Record Names", "operationCount": 1 }, { "name": "dns-proxys", "displayName": "Dns Proxys", "operationCount": 5 }, { "name": "dns-remote-zone-file", "displayName": "Dns Remote Zone File", "operationCount": 1 }, { "name": "dns-suggest-values", "displayName": "Dns Suggest Values", "operationCount": 1 }, { "name": "dns-zone-file-export", "displayName": "Dns Zone File Export", "operationCount": 1 }, { "name": "dos-automitigation-rules", "displayName": "Dos Automitigation Rules", "operationCount": 2 }, { "name": "download-certificates", "displayName": "Download Certificates", "operationCount": 1 }, { "name": "dynamic-data", "displayName": "Dynamic Data", "operationCount": 1 }, { "name": "edge-credentials", "displayName": "Edge Credentials", "operationCount": 1 }, { "name": "edge-list", "displayName": "Edge List", "operationCount": 1 }, { "name": "endpoints", "displayName": "Endpoints", "operationCount": 5 }, { "name": "enhanced-firewall-policys", "displayName": "Enhanced Firewall Policys", "operationCount": 5 }, { "name": "escalate", "displayName": "Escalate", "operationCount": 1 }, { "name": "evaluate", "displayName": "Evaluate", "operationCount": 1 }, { "name": "evaluate-api-access", "displayName": "Evaluate Api Access", "operationCount": 1 }, { "name": "evaluate-batch-api-access", "displayName": "Evaluate Batch Api Access", "operationCount": 1 }, { "name": "events", "displayName": "Events", "operationCount": 1 }, { "name": "events-aggregation", "displayName": "Events Aggregation", "operationCount": 1 }, { "name": "events-scroll", "displayName": "Events Scroll", "operationCount": 2 }, { "name": "external-connectors", "displayName": "External Connectors", "operationCount": 5 }, { "name": "fast-acl-rules", "displayName": "Fast Acl Rules", "operationCount": 5 }, { "name": "fast-acls", "displayName": "Fast Acls", "operationCount": 5 }, { "name": "fast-acls-for-internet-vips", "displayName": "Fast Acls For Internet Vips", "operationCount": 2 }, { "name": "filter-sets", "displayName": "Filter Sets", "operationCount": 5 }, { "name": "find", "displayName": "Find", "operationCount": 1 }, { "name": "firewall-logs", "displayName": "Firewall Logs", "operationCount": 1 }, { "name": "fleets", "displayName": "Fleets", "operationCount": 5 }, { "name": "flow-anomalys", "displayName": "Flow Anomalys", "operationCount": 2 }, { "name": "flow-collection-addon-subscribe", "displayName": "Flow Collection Addon Subscribe", "operationCount": 1 }, { "name": "flow-collection-addon-subscription-status", "displayName": "Flow Collection Addon Subscription Status", "operationCount": 1 }, { "name": "flow-collection-addon-unsubscribe", "displayName": "Flow Collection Addon Unsubscribe", "operationCount": 1 }, { "name": "flows-flow-collection", "displayName": "Flows Flow Collection", "operationCount": 1 }, { "name": "flows-top-flow-anomalies", "displayName": "Flows Top Flow Anomalies", "operationCount": 1 }, { "name": "flows-top-talkers", "displayName": "Flows Top Talkers", "operationCount": 1 }, { "name": "forward-proxy-policys", "displayName": "Forward Proxy Policys", "operationCount": 5 }, { "name": "forwarding-classs", "displayName": "Forwarding Classs", "operationCount": 5 }, { "name": "gcp-vpc-sites", "displayName": "Gcp Vpc Sites", "operationCount": 5 }, { "name": "gen-ai", "displayName": "Gen Ai", "operationCount": 1 }, { "name": "generate-token", "displayName": "Generate Token", "operationCount": 1 }, { "name": "geo-configs", "displayName": "Geo Configs", "operationCount": 1 }, { "name": "get-dns-info", "displayName": "Get Dns Info", "operationCount": 1 }, { "name": "get-security-config", "displayName": "Get Security Config", "operationCount": 1 }, { "name": "gia-gia-allocateip", "displayName": "Gia Gia Allocateip", "operationCount": 1 }, { "name": "gia-gia-deallocateip", "displayName": "Gia Gia Deallocateip", "operationCount": 1 }, { "name": "global-log-receivers", "displayName": "Global Log Receivers", "operationCount": 5 }, { "name": "global-networks", "displayName": "Global Networks", "operationCount": 1 }, { "name": "graph", "displayName": "Graph", "operationCount": 1 }, { "name": "graph-all-ns-service", "displayName": "Graph All Ns Service", "operationCount": 1 }, { "name": "health-status", "displayName": "Health Status", "operationCount": 1 }, { "name": "healthchecks", "displayName": "Healthchecks", "operationCount": 5 }, { "name": "history", "displayName": "History", "operationCount": 1 }, { "name": "history-aggregation", "displayName": "History Aggregation", "operationCount": 1 }, { "name": "history-scroll", "displayName": "History Scroll", "operationCount": 2 }, { "name": "hits", "displayName": "Hits", "operationCount": 1 }, { "name": "hourly-usage-details", "displayName": "Hourly Usage Details", "operationCount": 1 }, { "name": "http-loadbalancers", "displayName": "Http Loadbalancers", "operationCount": 5 }, { "name": "ike-phase1-profiles", "displayName": "Ike Phase1 Profiles", "operationCount": 5 }, { "name": "ike-phase2-profiles", "displayName": "Ike Phase2 Profiles", "operationCount": 5 }, { "name": "ike1s", "displayName": "Ike1S", "operationCount": 5 }, { "name": "ike2s", "displayName": "Ike2S", "operationCount": 5 }, { "name": "implicit-labels", "displayName": "Implicit Labels", "operationCount": 1 }, { "name": "incidents", "displayName": "Incidents", "operationCount": 1 }, { "name": "incidents-aggregation", "displayName": "Incidents Aggregation", "operationCount": 1 }, { "name": "incidents-scroll", "displayName": "Incidents Scroll", "operationCount": 2 }, { "name": "infraprotect", "displayName": "Infraprotect", "operationCount": 5 }, { "name": "infraprotect-alert", "displayName": "Infraprotect Alert", "operationCount": 1 }, { "name": "infraprotect-alert-to-event", "displayName": "Infraprotect Alert To Event", "operationCount": 1 }, { "name": "infraprotect-alerts", "displayName": "Infraprotect Alerts", "operationCount": 1 }, { "name": "infraprotect-event", "displayName": "Infraprotect Event", "operationCount": 2 }, { "name": "infraprotect-event-alerts", "displayName": "Infraprotect Event Alerts", "operationCount": 1 }, { "name": "infraprotect-event-attachments", "displayName": "Infraprotect Event Attachments", "operationCount": 1 }, { "name": "infraprotect-event-detail", "displayName": "Infraprotect Event Detail", "operationCount": 2 }, { "name": "infraprotect-event-details", "displayName": "Infraprotect Event Details", "operationCount": 2 }, { "name": "infraprotect-event-mitigation-annotations", "displayName": "Infraprotect Event Mitigation Annotations", "operationCount": 1 }, { "name": "infraprotect-events", "displayName": "Infraprotect Events", "operationCount": 1 }, { "name": "infraprotect-events-summary", "displayName": "Infraprotect Events Summary", "operationCount": 1 }, { "name": "infraprotect-infraprotect-access", "displayName": "Infraprotect Infraprotect Access", "operationCount": 1 }, { "name": "infraprotect-l3l4-by-application", "displayName": "Infraprotect L3L4 By Application", "operationCount": 1 }, { "name": "infraprotect-l3l4-by-mitigation", "displayName": "Infraprotect L3L4 By Mitigation", "operationCount": 1 }, { "name": "infraprotect-l3l4-by-network", "displayName": "Infraprotect L3L4 By Network", "operationCount": 1 }, { "name": "infraprotect-l3l4-by-zone", "displayName": "Infraprotect L3L4 By Zone", "operationCount": 1 }, { "name": "infraprotect-l3l4-event-count", "displayName": "Infraprotect L3L4 Event Count", "operationCount": 1 }, { "name": "infraprotect-l3l4-top-talkers", "displayName": "Infraprotect L3L4 Top Talkers", "operationCount": 1 }, { "name": "infraprotect-mitigation", "displayName": "Infraprotect Mitigation", "operationCount": 1 }, { "name": "infraprotect-mitigation-annotations", "displayName": "Infraprotect Mitigation Annotations", "operationCount": 1 }, { "name": "infraprotect-mitigation-countermeasures", "displayName": "Infraprotect Mitigation Countermeasures", "operationCount": 1 }, { "name": "infraprotect-mitigation-ips", "displayName": "Infraprotect Mitigation Ips", "operationCount": 1 }, { "name": "infraprotect-mitigations", "displayName": "Infraprotect Mitigations", "operationCount": 1 }, { "name": "infraprotect-networks", "displayName": "Infraprotect Networks", "operationCount": 1 }, { "name": "infraprotect-report", "displayName": "Infraprotect Report", "operationCount": 1 }, { "name": "infraprotect-reports", "displayName": "Infraprotect Reports", "operationCount": 1 }, { "name": "infraprotect-update-advertisement-status", "displayName": "Infraprotect Update Advertisement Status", "operationCount": 1 }, { "name": "infraprotect-update-asn-prefix-irr-override", "displayName": "Infraprotect Update Asn Prefix Irr Override", "operationCount": 1 }, { "name": "infraprotect-update-asn-prefix-review-status", "displayName": "Infraprotect Update Asn Prefix Review Status", "operationCount": 1 }, { "name": "infraprotect-update-asn-review-status", "displayName": "Infraprotect Update Asn Review Status", "operationCount": 1 }, { "name": "infraprotect-update-tunnel-clear-df-bit", "displayName": "Infraprotect Update Tunnel Clear Df Bit", "operationCount": 1 }, { "name": "infraprotect-update-tunnel-status", "displayName": "Infraprotect Update Tunnel Status", "operationCount": 1 }, { "name": "interface", "displayName": "Interface", "operationCount": 1 }, { "name": "invoice-pdf", "displayName": "Invoice Pdf", "operationCount": 1 }, { "name": "invoices-custom-list", "displayName": "Invoices Custom List", "operationCount": 1 }, { "name": "ip-prefix-sets", "displayName": "Ip Prefix Sets", "operationCount": 5 }, { "name": "irules", "displayName": "Irules", "operationCount": 5 }, { "name": "k8s-audit-logs", "displayName": "K8S Audit Logs", "operationCount": 1 }, { "name": "k8s-audit-logs-aggregation", "displayName": "K8S Audit Logs Aggregation", "operationCount": 1 }, { "name": "k8s-cluster-role-bindings", "displayName": "K8S Cluster Role Bindings", "operationCount": 5 }, { "name": "k8s-cluster-roles", "displayName": "K8S Cluster Roles", "operationCount": 5 }, { "name": "k8s-clusters", "displayName": "K8S Clusters", "operationCount": 5 }, { "name": "k8s-events", "displayName": "K8S Events", "operationCount": 1 }, { "name": "k8s-events-aggregation", "displayName": "K8S Events Aggregation", "operationCount": 1 }, { "name": "k8s-pod-security-admissions", "displayName": "K8S Pod Security Admissions", "operationCount": 5 }, { "name": "k8s-pod-security-policys", "displayName": "K8S Pod Security Policys", "operationCount": 5 }, { "name": "known-label-keys", "displayName": "Known Label Keys", "operationCount": 1 }, { "name": "known-labels", "displayName": "Known Labels", "operationCount": 1 }, { "name": "l7ddos-rps-threshold", "displayName": "L7Ddos Rps Threshold", "operationCount": 1 }, { "name": "latency", "displayName": "Latency", "operationCount": 1 }, { "name": "lb-cache-content", "displayName": "Lb Cache Content", "operationCount": 1 }, { "name": "limits", "displayName": "Limits", "operationCount": 1 }, { "name": "lma-regions", "displayName": "Lma Regions", "operationCount": 2 }, { "name": "loadbalancers", "displayName": "Loadbalancers", "operationCount": 1 }, { "name": "local-kubeconfig", "displayName": "Local Kubeconfig", "operationCount": 1 }, { "name": "local-kubeconfigs", "displayName": "Local Kubeconfigs", "operationCount": 1 }, { "name": "log-receiver-test", "displayName": "Log Receiver Test", "operationCount": 1 }, { "name": "log-receivers", "displayName": "Log Receivers", "operationCount": 5 }, { "name": "lookup-user-roles", "displayName": "Lookup User Roles", "operationCount": 1 }, { "name": "malicious-user-mitigations", "displayName": "Malicious User Mitigations", "operationCount": 5 }, { "name": "malware-protection-addon-subscribe", "displayName": "Malware Protection Addon Subscribe", "operationCount": 1 }, { "name": "malware-protection-addon-unsubscribe", "displayName": "Malware Protection Addon Unsubscribe", "operationCount": 1 }, { "name": "managed-client-customer-supports", "displayName": "Managed Client Customer Supports", "operationCount": 3 }, { "name": "managed-client-customer-supports-close", "displayName": "Managed Client Customer Supports Close", "operationCount": 1 }, { "name": "managed-client-customer-supports-comment", "displayName": "Managed Client Customer Supports Comment", "operationCount": 1 }, { "name": "managed-client-customer-supports-comment-attachment", "displayName": "Managed Client Customer Supports Comment Attachment", "operationCount": 1 }, { "name": "managed-client-customer-supports-escalate", "displayName": "Managed Client Customer Supports Escalate", "operationCount": 1 }, { "name": "managed-client-customer-supports-priority", "displayName": "Managed Client Customer Supports Priority", "operationCount": 1 }, { "name": "managed-client-customer-supports-reopen", "displayName": "Managed Client Customer Supports Reopen", "operationCount": 1 }, { "name": "managed-tenants", "displayName": "Managed Tenants", "operationCount": 5 }, { "name": "managed-tenants-by-user", "displayName": "Managed Tenants By User", "operationCount": 1 }, { "name": "managed-tenants-list", "displayName": "Managed Tenants List", "operationCount": 1 }, { "name": "mark-as-non-api", "displayName": "Mark As Non Api", "operationCount": 1 }, { "name": "maurice-pre-upgrade-check", "displayName": "Maurice Pre Upgrade Check", "operationCount": 1 }, { "name": "maurice-software-os-version", "displayName": "Maurice Software Os Version", "operationCount": 1 }, { "name": "maurice-upgradable-sw-versions", "displayName": "Maurice Upgradable Sw Versions", "operationCount": 1 }, { "name": "maurice-upgrade-status", "displayName": "Maurice Upgrade Status", "operationCount": 1 }, { "name": "metrics", "displayName": "Metrics", "operationCount": 1 }, { "name": "metrics-client-rule-hits", "displayName": "Metrics Client Rule Hits", "operationCount": 1 }, { "name": "metrics-client-security-events", "displayName": "Metrics Client Security Events", "operationCount": 1 }, { "name": "metrics-server-rule-hits", "displayName": "Metrics Server Rule Hits", "operationCount": 1 }, { "name": "metrics-server-security-events", "displayName": "Metrics Server Security Events", "operationCount": 1 }, { "name": "mobile-app-shield-mobile-app-shield-addon-subscribe", "displayName": "Mobile App Shield Mobile App Shield Addon Subscribe", "operationCount": 1 }, { "name": "mobile-app-shield-mobile-app-shield-addon-unsubscribe", "displayName": "Mobile App Shield Mobile App Shield Addon Unsubscribe", "operationCount": 1 }, { "name": "mobile-integrator-mobile-integrator-addon-subscribe", "displayName": "Mobile Integrator Mobile Integrator Addon Subscribe", "operationCount": 1 }, { "name": "mobile-integrator-mobile-integrator-addon-unsubscribe", "displayName": "Mobile Integrator Mobile Integrator Addon Unsubscribe", "operationCount": 1 }, { "name": "mobile-security", "displayName": "Mobile Security", "operationCount": 5 }, { "name": "monthly-usage", "displayName": "Monthly Usage", "operationCount": 1 }, { "name": "move-to-inventory", "displayName": "Move To Inventory", "operationCount": 1 }, { "name": "namespace-roles", "displayName": "Namespace Roles", "operationCount": 2 }, { "name": "namespaces", "displayName": "Namespaces", "operationCount": 4 }, { "name": "nat-policys", "displayName": "Nat Policys", "operationCount": 5 }, { "name": "navigation-tiles", "displayName": "Navigation Tiles", "operationCount": 2 }, { "name": "network-connectors", "displayName": "Network Connectors", "operationCount": 5 }, { "name": "network-firewalls", "displayName": "Network Firewalls", "operationCount": 5 }, { "name": "network-interfaces", "displayName": "Network Interfaces", "operationCount": 5 }, { "name": "network-policy-rules", "displayName": "Network Policy Rules", "operationCount": 5 }, { "name": "network-policy-sets", "displayName": "Network Policy Sets", "operationCount": 2 }, { "name": "network-policy-views", "displayName": "Network Policy Views", "operationCount": 5 }, { "name": "network-policys", "displayName": "Network Policys", "operationCount": 5 }, { "name": "networking-inventory", "displayName": "Networking Inventory", "operationCount": 1 }, { "name": "nfv-service-force-delete", "displayName": "Nfv Service Force Delete", "operationCount": 1 }, { "name": "nfv-services", "displayName": "Nfv Services", "operationCount": 5 }, { "name": "nginx-csgs", "displayName": "Nginx Csgs", "operationCount": 2 }, { "name": "nginx-dataplane-servers", "displayName": "Nginx Dataplane Servers", "operationCount": 1 }, { "name": "nginx-instances", "displayName": "Nginx Instances", "operationCount": 2 }, { "name": "nginx-one-n1-subscribe", "displayName": "Nginx One N1 Subscribe", "operationCount": 1 }, { "name": "nginx-one-n1-unsubscribe", "displayName": "Nginx One N1 Unsubscribe", "operationCount": 1 }, { "name": "nginx-servers", "displayName": "Nginx Servers", "operationCount": 2 }, { "name": "nginx-service-discoverys", "displayName": "Nginx Service Discoverys", "operationCount": 5 }, { "name": "no-auth-aws-f5xc-saas-register", "displayName": "No Auth Aws F5Xc Saas Register", "operationCount": 1 }, { "name": "no-auth-aws-f5xc-saas-signup", "displayName": "No Auth Aws F5Xc Saas Signup", "operationCount": 1 }, { "name": "no-auth-billing-plan-transition", "displayName": "No Auth Billing Plan Transition", "operationCount": 1 }, { "name": "no-auth-cname-lookup", "displayName": "No Auth Cname Lookup", "operationCount": 1 }, { "name": "no-auth-countries", "displayName": "No Auth Countries", "operationCount": 1 }, { "name": "no-auth-countries-states", "displayName": "No Auth Countries States", "operationCount": 1 }, { "name": "no-auth-countries-states-cities", "displayName": "No Auth Countries States Cities", "operationCount": 1 }, { "name": "no-auth-f5xc-saas-signup", "displayName": "No Auth F5Xc Saas Signup", "operationCount": 1 }, { "name": "no-auth-f5xc-saas-signup-registration-details", "displayName": "No Auth F5Xc Saas Signup Registration Details", "operationCount": 1 }, { "name": "no-auth-f5xc-saas-signup-send-email", "displayName": "No Auth F5Xc Saas Signup Send Email", "operationCount": 1 }, { "name": "no-auth-login-validate-registration", "displayName": "No Auth Login Validate Registration", "operationCount": 1 }, { "name": "no-auth-send-password-email", "displayName": "No Auth Send Password Email", "operationCount": 1 }, { "name": "no-auth-signup", "displayName": "No Auth Signup", "operationCount": 1 }, { "name": "no-auth-tenant-idm-settings-password-policy", "displayName": "No Auth Tenant Idm Settings Password Policy", "operationCount": 1 }, { "name": "no-auth-validate-contact", "displayName": "No Auth Validate Contact", "operationCount": 1 }, { "name": "oas-validation-suggestion", "displayName": "Oas Validation Suggestion", "operationCount": 1 }, { "name": "object-store", "displayName": "Object Store", "operationCount": 3 }, { "name": "object-store-mobile-app-shield", "displayName": "Object Store Mobile App Shield", "operationCount": 2 }, { "name": "object-store-mobile-integrator", "displayName": "Object Store Mobile Integrator", "operationCount": 2 }, { "name": "object-store-mobile-sdk", "displayName": "Object Store Mobile Sdk", "operationCount": 2 }, { "name": "object-store-mobile-sdk-self-serve", "displayName": "Object Store Mobile Sdk Self Serve", "operationCount": 2 }, { "name": "observability-connector-observability-subscribe", "displayName": "Observability Connector Observability Subscribe", "operationCount": 1 }, { "name": "observability-connector-observability-unsubscribe", "displayName": "Observability Connector Observability Unsubscribe", "operationCount": 1 }, { "name": "observability-synthetic-monitor", "displayName": "Observability Synthetic Monitor", "operationCount": 5 }, { "name": "operate-sites-vpm-debug-change-password", "displayName": "Operate Sites Vpm Debug Change Password", "operationCount": 1 }, { "name": "operate-sites-vpm-debug-global-allow-f5-ssh", "displayName": "Operate Sites Vpm Debug Global Allow F5 Ssh", "operationCount": 1 }, { "name": "operate-sites-vpm-debug-global-check-debug-info-collection", "displayName": "Operate Sites Vpm Debug Global Check Debug Info Collection", "operationCount": 1 }, { "name": "operate-sites-vpm-debug-global-diagnosis", "displayName": "Operate Sites Vpm Debug Global Diagnosis", "operationCount": 1 }, { "name": "operate-sites-vpm-debug-global-download-debug-info-collection", "displayName": "Operate Sites Vpm Debug Global Download Debug Info Collection", "operationCount": 1 }, { "name": "operate-sites-vpm-debug-global-health", "displayName": "Operate Sites Vpm Debug Global Health", "operationCount": 1 }, { "name": "operate-sites-vpm-debug-start-debug-info-collection", "displayName": "Operate Sites Vpm Debug Start Debug Info Collection", "operationCount": 1 }, { "name": "operate-ver-bgp-peers", "displayName": "Operate Ver Bgp Peers", "operationCount": 1 }, { "name": "operate-ver-bgp-routes", "displayName": "Operate Ver Bgp Routes", "operationCount": 1 }, { "name": "operate-ver-dhcp-leases", "displayName": "Operate Ver Dhcp Leases", "operationCount": 1 }, { "name": "operate-ver-fetchdump", "displayName": "Operate Ver Fetchdump", "operationCount": 1 }, { "name": "operate-ver-list-tcpdump", "displayName": "Operate Ver List Tcpdump", "operationCount": 1 }, { "name": "operate-ver-matching-flows", "displayName": "Operate Ver Matching Flows", "operationCount": 1 }, { "name": "operate-ver-ping", "displayName": "Operate Ver Ping", "operationCount": 1 }, { "name": "operate-ver-resync-crl", "displayName": "Operate Ver Resync Crl", "operationCount": 1 }, { "name": "operate-ver-routes", "displayName": "Operate Ver Routes", "operationCount": 1 }, { "name": "operate-ver-simplified-routes", "displayName": "Operate Ver Simplified Routes", "operationCount": 1 }, { "name": "operate-ver-stop-tcpdump", "displayName": "Operate Ver Stop Tcpdump", "operationCount": 1 }, { "name": "operate-ver-tcpdump", "displayName": "Operate Ver Tcpdump", "operationCount": 1 }, { "name": "operate-ver-traceroute", "displayName": "Operate Ver Traceroute", "operationCount": 1 }, { "name": "operate-vpm-debug-exec", "displayName": "Operate Vpm Debug Exec", "operationCount": 1 }, { "name": "operate-vpm-debug-exec-log", "displayName": "Operate Vpm Debug Exec Log", "operationCount": 1 }, { "name": "operate-vpm-debug-exec-user", "displayName": "Operate Vpm Debug Exec User", "operationCount": 1 }, { "name": "operate-vpm-debug-global-list-service", "displayName": "Operate Vpm Debug Global List Service", "operationCount": 1 }, { "name": "operate-vpm-debug-global-status", "displayName": "Operate Vpm Debug Global Status", "operationCount": 1 }, { "name": "operate-vpm-debug-host-ping", "displayName": "Operate Vpm Debug Host Ping", "operationCount": 1 }, { "name": "operate-vpm-debug-log", "displayName": "Operate Vpm Debug Log", "operationCount": 1 }, { "name": "operate-vpm-debug-reboot", "displayName": "Operate Vpm Debug Reboot", "operationCount": 1 }, { "name": "operate-vpm-debug-soft-restart", "displayName": "Operate Vpm Debug Soft Restart", "operationCount": 1 }, { "name": "operate-vpm-lte", "displayName": "Operate Vpm Lte", "operationCount": 2 }, { "name": "operate-vpm-lte-disconnect", "displayName": "Operate Vpm Lte Disconnect", "operationCount": 1 }, { "name": "operate-vpm-lte-info", "displayName": "Operate Vpm Lte Info", "operationCount": 1 }, { "name": "operate-vpm-usb", "displayName": "Operate Vpm Usb", "operationCount": 2 }, { "name": "operate-vpm-usb-list", "displayName": "Operate Vpm Usb List", "operationCount": 1 }, { "name": "operate-vpm-usb-rules", "displayName": "Operate Vpm Usb Rules", "operationCount": 1 }, { "name": "operate-vpm-usb-rules-add", "displayName": "Operate Vpm Usb Rules Add", "operationCount": 1 }, { "name": "operate-vpm-usb-rules-delete", "displayName": "Operate Vpm Usb Rules Delete", "operationCount": 1 }, { "name": "operate-vpm-wifi", "displayName": "Operate Vpm Wifi", "operationCount": 2 }, { "name": "operate-vpm-wifi-disconnect", "displayName": "Operate Vpm Wifi Disconnect", "operationCount": 1 }, { "name": "operate-vpm-wifi-info", "displayName": "Operate Vpm Wifi Info", "operationCount": 1 }, { "name": "operate-vpm-wifi-list", "displayName": "Operate Vpm Wifi List", "operationCount": 1 }, { "name": "origin-pools", "displayName": "Origin Pools", "operationCount": 5 }, { "name": "override-pop", "displayName": "Override Pop", "operationCount": 1 }, { "name": "override-push", "displayName": "Override Push", "operationCount": 1 }, { "name": "overrides", "displayName": "Overrides", "operationCount": 1 }, { "name": "partner-management-child-tenant-managers-child-tenants", "displayName": "Partner Management Child Tenant Managers Child Tenants", "operationCount": 1 }, { "name": "partner-management-child-tenant-managers-child-tenants-migrate", "displayName": "Partner Management Child Tenant Managers Child Tenants Migrate", "operationCount": 1 }, { "name": "partner-management-child-tenants", "displayName": "Partner Management Child Tenants", "operationCount": 1 }, { "name": "partner-management-child-tenants-migrate", "displayName": "Partner Management Child Tenants Migrate", "operationCount": 1 }, { "name": "partner-management-customer-supports", "displayName": "Partner Management Customer Supports", "operationCount": 3 }, { "name": "partner-management-customer-supports-close", "displayName": "Partner Management Customer Supports Close", "operationCount": 1 }, { "name": "partner-management-customer-supports-comment", "displayName": "Partner Management Customer Supports Comment", "operationCount": 1 }, { "name": "partner-management-customer-supports-comment-attachment", "displayName": "Partner Management Customer Supports Comment Attachment", "operationCount": 1 }, { "name": "partner-management-customer-supports-escalate", "displayName": "Partner Management Customer Supports Escalate", "operationCount": 1 }, { "name": "partner-management-customer-supports-priority", "displayName": "Partner Management Customer Supports Priority", "operationCount": 1 }, { "name": "partner-management-customer-supports-reopen", "displayName": "Partner Management Customer Supports Reopen", "operationCount": 1 }, { "name": "payment-method-primary", "displayName": "Payment Method Primary", "operationCount": 1 }, { "name": "payment-method-secondary", "displayName": "Payment Method Secondary", "operationCount": 1 }, { "name": "payment-method-swap-primary", "displayName": "Payment Method Swap Primary", "operationCount": 1 }, { "name": "payment-methods", "displayName": "Payment Methods", "operationCount": 2 }, { "name": "plan-transition", "displayName": "Plan Transition", "operationCount": 1 }, { "name": "plans", "displayName": "Plans", "operationCount": 2 }, { "name": "platform-events", "displayName": "Platform Events", "operationCount": 1 }, { "name": "policers", "displayName": "Policers", "operationCount": 5 }, { "name": "policy-based-routings", "displayName": "Policy Based Routings", "operationCount": 5 }, { "name": "pool-members-health-status", "displayName": "Pool Members Health Status", "operationCount": 1 }, { "name": "priority", "displayName": "Priority", "operationCount": 1 }, { "name": "protocol-inspections", "displayName": "Protocol Inspections", "operationCount": 5 }, { "name": "protocol-policers", "displayName": "Protocol Policers", "operationCount": 5 }, { "name": "proxys", "displayName": "Proxys", "operationCount": 5 }, { "name": "public-ips", "displayName": "Public Ips", "operationCount": 3 }, { "name": "pvc-metrics", "displayName": "Pvc Metrics", "operationCount": 1 }, { "name": "quotas", "displayName": "Quotas", "operationCount": 5 }, { "name": "rate-limit-suggestion", "displayName": "Rate Limit Suggestion", "operationCount": 1 }, { "name": "rate-limiter-policys", "displayName": "Rate Limiter Policys", "operationCount": 5 }, { "name": "rate-limiters", "displayName": "Rate Limiters", "operationCount": 5 }, { "name": "rbac-policys", "displayName": "Rbac Policys", "operationCount": 2 }, { "name": "register", "displayName": "Register", "operationCount": 5 }, { "name": "register-approve", "displayName": "Register Approve", "operationCount": 1 }, { "name": "register-get-cloud-init-config", "displayName": "Register Get Cloud Init Config", "operationCount": 1 }, { "name": "register-get-image-download-url", "displayName": "Register Get Image Download Url", "operationCount": 1 }, { "name": "register-get-registrations-by-token", "displayName": "Register Get Registrations By Token", "operationCount": 1 }, { "name": "register-registerBootstrap", "displayName": "Register Registerbootstrap", "operationCount": 1 }, { "name": "register-requestConfig", "displayName": "Register Requestconfig", "operationCount": 1 }, { "name": "register-state", "displayName": "Register State", "operationCount": 1 }, { "name": "register-suggest-values", "displayName": "Register Suggest Values", "operationCount": 1 }, { "name": "released-signatures", "displayName": "Released Signatures", "operationCount": 1 }, { "name": "remove-from-inventory", "displayName": "Remove From Inventory", "operationCount": 1 }, { "name": "reopen", "displayName": "Reopen", "operationCount": 1 }, { "name": "report", "displayName": "Report", "operationCount": 5 }, { "name": "report-download", "displayName": "Report Download", "operationCount": 1 }, { "name": "report-generate", "displayName": "Report Generate", "operationCount": 1 }, { "name": "report-list-reports-history", "displayName": "Report List Reports History", "operationCount": 1 }, { "name": "report-list-reports-history-bot-defence", "displayName": "Report List Reports History Bot Defence", "operationCount": 1 }, { "name": "report-list-reports-history-waap", "displayName": "Report List Reports History Waap", "operationCount": 1 }, { "name": "request-logs", "displayName": "Request Logs", "operationCount": 1 }, { "name": "revoke-global-kubeconfigs", "displayName": "Revoke Global Kubeconfigs", "operationCount": 1 }, { "name": "roles", "displayName": "Roles", "operationCount": 5 }, { "name": "routes", "displayName": "Routes", "operationCount": 5 }, { "name": "rtip-internal", "displayName": "Rtip Internal", "operationCount": 2 }, { "name": "rule-suggestion-api-endpoint-protection", "displayName": "Rule Suggestion Api Endpoint Protection", "operationCount": 1 }, { "name": "rule-suggestion-data-exposure", "displayName": "Rule Suggestion Data Exposure", "operationCount": 1 }, { "name": "rule-suggestion-oas-validation", "displayName": "Rule Suggestion Oas Validation", "operationCount": 1 }, { "name": "rule-suggestion-rate-limit", "displayName": "Rule Suggestion Rate Limit", "operationCount": 1 }, { "name": "saas-v2-tenant-deactivate", "displayName": "Saas V2 Tenant Deactivate", "operationCount": 1 }, { "name": "schemas-.*", "displayName": "Schemas .*", "operationCount": 1 }, { "name": "scim-token", "displayName": "Scim Token", "operationCount": 2 }, { "name": "scim-v2-Groups", "displayName": "Scim V2 Groups", "operationCount": 6 }, { "name": "scim-v2-ResourceTypes", "displayName": "Scim V2 Resourcetypes", "operationCount": 2 }, { "name": "scim-v2-Schemas", "displayName": "Scim V2 Schemas", "operationCount": 2 }, { "name": "scim-v2-ServiceProviderConfig", "displayName": "Scim V2 Serviceproviderconfig", "operationCount": 1 }, { "name": "scim-v2-Users", "displayName": "Scim V2 Users", "operationCount": 6 }, { "name": "scroll", "displayName": "Scroll", "operationCount": 2 }, { "name": "search-loadbalancers", "displayName": "Search Loadbalancers", "operationCount": 1 }, { "name": "secret-management", "displayName": "Secret Management", "operationCount": 5 }, { "name": "secret-management-access-count", "displayName": "Secret Management Access Count", "operationCount": 1 }, { "name": "secret-management-accesss", "displayName": "Secret Management Accesss", "operationCount": 5 }, { "name": "secret-management-audit-logs", "displayName": "Secret Management Audit Logs", "operationCount": 1 }, { "name": "secret-management-audit-logs-aggregation", "displayName": "Secret Management Audit Logs Aggregation", "operationCount": 1 }, { "name": "secret-management-audit-logs-scroll", "displayName": "Secret Management Audit Logs Scroll", "operationCount": 2 }, { "name": "secret-management-get-policy-document", "displayName": "Secret Management Get Policy Document", "operationCount": 1 }, { "name": "secret-management-get-public-key", "displayName": "Secret Management Get Public Key", "operationCount": 1 }, { "name": "secret-management-list-policy", "displayName": "Secret Management List Policy", "operationCount": 1 }, { "name": "secret-management-recover", "displayName": "Secret Management Recover", "operationCount": 1 }, { "name": "secret-management-softdelete", "displayName": "Secret Management Softdelete", "operationCount": 1 }, { "name": "secret-management-voltshare-decrypt-secret", "displayName": "Secret Management Voltshare Decrypt Secret", "operationCount": 1 }, { "name": "secret-management-voltshare-process-policy-information", "displayName": "Secret Management Voltshare Process Policy Information", "operationCount": 1 }, { "name": "securemesh-site-v2s", "displayName": "Securemesh Site V2S", "operationCount": 5 }, { "name": "securemesh-sites", "displayName": "Securemesh Sites", "operationCount": 5 }, { "name": "segment-connections", "displayName": "Segment Connections", "operationCount": 3 }, { "name": "segments", "displayName": "Segments", "operationCount": 5 }, { "name": "selectees", "displayName": "Selectees", "operationCount": 1 }, { "name": "sensitive-data-policys", "displayName": "Sensitive Data Policys", "operationCount": 5 }, { "name": "service", "displayName": "Service", "operationCount": 1 }, { "name": "service-app-types", "displayName": "Service App Types", "operationCount": 1 }, { "name": "service-credentials", "displayName": "Service Credentials", "operationCount": 4 }, { "name": "service-edge", "displayName": "Service Edge", "operationCount": 1 }, { "name": "service-node", "displayName": "Service Node", "operationCount": 1 }, { "name": "service-node-instance", "displayName": "Service Node Instance", "operationCount": 1 }, { "name": "service-node-instances", "displayName": "Service Node Instances", "operationCount": 1 }, { "name": "service-policy-rules", "displayName": "Service Policy Rules", "operationCount": 5 }, { "name": "service-policy-sets", "displayName": "Service Policy Sets", "operationCount": 2 }, { "name": "service-policys", "displayName": "Service Policys", "operationCount": 5 }, { "name": "services-api-endpoint-pdf", "displayName": "Services Api Endpoint Pdf", "operationCount": 1 }, { "name": "services-api-endpoints", "displayName": "Services Api Endpoints", "operationCount": 1 }, { "name": "set-cloud-site-info", "displayName": "Set Cloud Site Info", "operationCount": 1 }, { "name": "set-log-anonymization", "displayName": "Set Log Anonymization", "operationCount": 1 }, { "name": "set-tgw-info", "displayName": "Set Tgw Info", "operationCount": 1 }, { "name": "set-vip-info", "displayName": "Set Vip Info", "operationCount": 1 }, { "name": "set-vpc-ip-prefixes", "displayName": "Set Vpc Ip Prefixes", "operationCount": 1 }, { "name": "set-vpn-tunnels", "displayName": "Set Vpn Tunnels", "operationCount": 1 }, { "name": "settings", "displayName": "Settings", "operationCount": 1 }, { "name": "shape-alerts", "displayName": "Shape Alerts", "operationCount": 5 }, { "name": "shape-alerts-clone", "displayName": "Shape Alerts Clone", "operationCount": 1 }, { "name": "shape-alerts-status", "displayName": "Shape Alerts Status", "operationCount": 1 }, { "name": "shape-bot", "displayName": "Shape Bot", "operationCount": 5 }, { "name": "shape-bot-add-to-csr", "displayName": "Shape Bot Add To Csr", "operationCount": 1 }, { "name": "shape-bot-add-with-private-key", "displayName": "Shape Bot Add With Private Key", "operationCount": 1 }, { "name": "shape-bot-apikey", "displayName": "Shape Bot Apikey", "operationCount": 1 }, { "name": "shape-bot-apply-certificate", "displayName": "Shape Bot Apply Certificate", "operationCount": 1 }, { "name": "shape-bot-archive", "displayName": "Shape Bot Archive", "operationCount": 1 }, { "name": "shape-bot-atb", "displayName": "Shape Bot Atb", "operationCount": 2 }, { "name": "shape-bot-bot-defense-addon-subscribe", "displayName": "Shape Bot Bot Defense Addon Subscribe", "operationCount": 1 }, { "name": "shape-bot-bot-defense-addon-unsubscribe", "displayName": "Shape Bot Bot Defense Addon Unsubscribe", "operationCount": 1 }, { "name": "shape-bot-consumption-summary", "displayName": "Shape Bot Consumption Summary", "operationCount": 1 }, { "name": "shape-bot-csr", "displayName": "Shape Bot Csr", "operationCount": 2 }, { "name": "shape-bot-custom", "displayName": "Shape Bot Custom", "operationCount": 3 }, { "name": "shape-bot-custom-deployments", "displayName": "Shape Bot Custom Deployments", "operationCount": 2 }, { "name": "shape-bot-custom-draft", "displayName": "Shape Bot Custom Draft", "operationCount": 3 }, { "name": "shape-bot-custom-summary", "displayName": "Shape Bot Custom Summary", "operationCount": 1 }, { "name": "shape-bot-defense-instances", "displayName": "Shape Bot Defense Instances", "operationCount": 2 }, { "name": "shape-bot-deployment-history", "displayName": "Shape Bot Deployment History", "operationCount": 1 }, { "name": "shape-bot-deployment-status", "displayName": "Shape Bot Deployment Status", "operationCount": 1 }, { "name": "shape-bot-download-release-notes", "displayName": "Shape Bot Download Release Notes", "operationCount": 1 }, { "name": "shape-bot-endpoint-categories", "displayName": "Shape Bot Endpoint Categories", "operationCount": 1 }, { "name": "shape-bot-endpoint-list", "displayName": "Shape Bot Endpoint List", "operationCount": 1 }, { "name": "shape-bot-endpoint-summary", "displayName": "Shape Bot Endpoint Summary", "operationCount": 1 }, { "name": "shape-bot-endpoints", "displayName": "Shape Bot Endpoints", "operationCount": 1 }, { "name": "shape-bot-generate-csr", "displayName": "Shape Bot Generate Csr", "operationCount": 1 }, { "name": "shape-bot-history", "displayName": "Shape Bot History", "operationCount": 1 }, { "name": "shape-bot-insight-credential-stuffing-attack", "displayName": "Shape Bot Insight Credential Stuffing Attack", "operationCount": 1 }, { "name": "shape-bot-insight-event-bad-bot-reduction", "displayName": "Shape Bot Insight Event Bad Bot Reduction", "operationCount": 1 }, { "name": "shape-bot-insight-event-unaddressed-automations", "displayName": "Shape Bot Insight Event Unaddressed Automations", "operationCount": 1 }, { "name": "shape-bot-insight-personal-stats", "displayName": "Shape Bot Insight Personal Stats", "operationCount": 1 }, { "name": "shape-bot-insight-total-automation", "displayName": "Shape Bot Insight Total Automation", "operationCount": 1 }, { "name": "shape-bot-list-certificate", "displayName": "Shape Bot List Certificate", "operationCount": 1 }, { "name": "shape-bot-list-csr", "displayName": "Shape Bot List Csr", "operationCount": 1 }, { "name": "shape-bot-malicious-endpoints", "displayName": "Shape Bot Malicious Endpoints", "operationCount": 1 }, { "name": "shape-bot-malicious-transactions-asn", "displayName": "Shape Bot Malicious Transactions Asn", "operationCount": 1 }, { "name": "shape-bot-malicious-transactions-browser", "displayName": "Shape Bot Malicious Transactions Browser", "operationCount": 1 }, { "name": "shape-bot-malicious-transactions-ip", "displayName": "Shape Bot Malicious Transactions Ip", "operationCount": 1 }, { "name": "shape-bot-malicious-transactions-os", "displayName": "Shape Bot Malicious Transactions Os", "operationCount": 1 }, { "name": "shape-bot-malicious-transactions-ua", "displayName": "Shape Bot Malicious Transactions Ua", "operationCount": 1 }, { "name": "shape-bot-policies", "displayName": "Shape Bot Policies", "operationCount": 1 }, { "name": "shape-bot-regions", "displayName": "Shape Bot Regions", "operationCount": 1 }, { "name": "shape-bot-reporting-endpoint-summary", "displayName": "Shape Bot Reporting Endpoint Summary", "operationCount": 1 }, { "name": "shape-bot-reporting-forensic-fields", "displayName": "Shape Bot Reporting Forensic Fields", "operationCount": 1 }, { "name": "shape-bot-reporting-malicious-endpoints", "displayName": "Shape Bot Reporting Malicious Endpoints", "operationCount": 1 }, { "name": "shape-bot-reporting-malicious-transactions-asn", "displayName": "Shape Bot Reporting Malicious Transactions Asn", "operationCount": 1 }, { "name": "shape-bot-reporting-malicious-transactions-browser", "displayName": "Shape Bot Reporting Malicious Transactions Browser", "operationCount": 1 }, { "name": "shape-bot-reporting-malicious-transactions-ip", "displayName": "Shape Bot Reporting Malicious Transactions Ip", "operationCount": 1 }, { "name": "shape-bot-reporting-malicious-transactions-os", "displayName": "Shape Bot Reporting Malicious Transactions Os", "operationCount": 1 }, { "name": "shape-bot-reporting-malicious-transactions-ua", "displayName": "Shape Bot Reporting Malicious Transactions Ua", "operationCount": 1 }, { "name": "shape-bot-reporting-peers-check", "displayName": "Shape Bot Reporting Peers Check", "operationCount": 1 }, { "name": "shape-bot-reporting-peers-threat-types", "displayName": "Shape Bot Reporting Peers Threat Types", "operationCount": 1 }, { "name": "shape-bot-reporting-peers-top-good-bots", "displayName": "Shape Bot Reporting Peers Top Good Bots", "operationCount": 1 }, { "name": "shape-bot-reporting-peers-top-reason-codes", "displayName": "Shape Bot Reporting Peers Top Reason Codes", "operationCount": 1 }, { "name": "shape-bot-reporting-peers-traffic-overview", "displayName": "Shape Bot Reporting Peers Traffic Overview", "operationCount": 1 }, { "name": "shape-bot-reporting-top-type-good", "displayName": "Shape Bot Reporting Top Type Good", "operationCount": 1 }, { "name": "shape-bot-reporting-top-type-human-dimension-browser", "displayName": "Shape Bot Reporting Top Type Human Dimension Browser", "operationCount": 1 }, { "name": "shape-bot-reporting-top-type-human-dimension-device", "displayName": "Shape Bot Reporting Top Type Human Dimension Device", "operationCount": 1 }, { "name": "shape-bot-reporting-top-type-human-dimension-geolocation", "displayName": "Shape Bot Reporting Top Type Human Dimension Geolocation", "operationCount": 1 }, { "name": "shape-bot-reporting-top-type-human-dimension-platform", "displayName": "Shape Bot Reporting Top Type Human Dimension Platform", "operationCount": 1 }, { "name": "shape-bot-reporting-top-type-malicious-dimension-apps-timeseries", "displayName": "Shape Bot Reporting Top Type Malicious Dimension Apps Timeseries", "operationCount": 1 }, { "name": "shape-bot-reporting-top-type-malicious-dimension-asorg", "displayName": "Shape Bot Reporting Top Type Malicious Dimension Asorg", "operationCount": 1 }, { "name": "shape-bot-reporting-top-type-malicious-dimension-attackintent", "displayName": "Shape Bot Reporting Top Type Malicious Dimension Attackintent", "operationCount": 1 }, { "name": "shape-bot-reporting-top-type-malicious-dimension-automation", "displayName": "Shape Bot Reporting Top Type Malicious Dimension Automation", "operationCount": 1 }, { "name": "shape-bot-reporting-top-type-malicious-dimension-endpoints", "displayName": "Shape Bot Reporting Top Type Malicious Dimension Endpoints", "operationCount": 1 }, { "name": "shape-bot-reporting-top-type-malicious-dimension-ip", "displayName": "Shape Bot Reporting Top Type Malicious Dimension Ip", "operationCount": 1 }, { "name": "shape-bot-reporting-top-type-malicious-dimension-ua", "displayName": "Shape Bot Reporting Top Type Malicious Dimension Ua", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-automated-overview-actions", "displayName": "Shape Bot Reporting Traffic Automated Overview Actions", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-known-active-ai", "displayName": "Shape Bot Reporting Traffic Known Active Ai", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-known-dimension-category", "displayName": "Shape Bot Reporting Traffic Known Dimension Category", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-known-dimension-category-actions", "displayName": "Shape Bot Reporting Traffic Known Dimension Category Actions", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-known-dimension-category-actions-ai", "displayName": "Shape Bot Reporting Traffic Known Dimension Category Actions Ai", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-known-dimension-category-timeseries", "displayName": "Shape Bot Reporting Traffic Known Dimension Category Timeseries", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-known-dimension-endpoint", "displayName": "Shape Bot Reporting Traffic Known Dimension Endpoint", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-known-statistics-overview", "displayName": "Shape Bot Reporting Traffic Known Statistics Overview", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-malicious-dimension-attackintent-timeseries", "displayName": "Shape Bot Reporting Traffic Malicious Dimension Attackintent Timeseries", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-malicious-overview-actions", "displayName": "Shape Bot Reporting Traffic Malicious Overview Actions", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-malicious-overview-metrics", "displayName": "Shape Bot Reporting Traffic Malicious Overview Metrics", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-malicious-overview-timeseries-actions", "displayName": "Shape Bot Reporting Traffic Malicious Overview Timeseries Actions", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-overview", "displayName": "Shape Bot Reporting Traffic Overview", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-overview-expanded", "displayName": "Shape Bot Reporting Traffic Overview Expanded", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-overview-timeseries", "displayName": "Shape Bot Reporting Traffic Overview Timeseries", "operationCount": 1 }, { "name": "shape-bot-reporting-traffic-top-type-known-active", "displayName": "Shape Bot Reporting Traffic Top Type Known Active", "operationCount": 1 }, { "name": "shape-bot-rollback-certificate-to-default", "displayName": "Shape Bot Rollback Certificate To Default", "operationCount": 1 }, { "name": "shape-bot-subscribe", "displayName": "Shape Bot Subscribe", "operationCount": 1 }, { "name": "shape-bot-template", "displayName": "Shape Bot Template", "operationCount": 1 }, { "name": "shape-bot-top-endpoints", "displayName": "Shape Bot Top Endpoints", "operationCount": 1 }, { "name": "shape-bot-top-latency-overview", "displayName": "Shape Bot Top Latency Overview", "operationCount": 1 }, { "name": "shape-bot-top-latency-overview-apps", "displayName": "Shape Bot Top Latency Overview Apps", "operationCount": 1 }, { "name": "shape-bot-top-malicious-asorg", "displayName": "Shape Bot Top Malicious Asorg", "operationCount": 1 }, { "name": "shape-bot-top-malicious-automation", "displayName": "Shape Bot Top Malicious Automation", "operationCount": 1 }, { "name": "shape-bot-top-malicious-ip", "displayName": "Shape Bot Top Malicious Ip", "operationCount": 1 }, { "name": "shape-bot-top-malicious-ua", "displayName": "Shape Bot Top Malicious Ua", "operationCount": 1 }, { "name": "shape-bot-top-transactions-app", "displayName": "Shape Bot Top Transactions App", "operationCount": 1 }, { "name": "shape-bot-top-transactions-categories", "displayName": "Shape Bot Top Transactions Categories", "operationCount": 1 }, { "name": "shape-bot-top-transactions-endpointlabels", "displayName": "Shape Bot Top Transactions Endpointlabels", "operationCount": 1 }, { "name": "shape-bot-top-type-good", "displayName": "Shape Bot Top Type Good", "operationCount": 1 }, { "name": "shape-bot-top-type-human-dimension-browser", "displayName": "Shape Bot Top Type Human Dimension Browser", "operationCount": 1 }, { "name": "shape-bot-top-type-human-dimension-device", "displayName": "Shape Bot Top Type Human Dimension Device", "operationCount": 1 }, { "name": "shape-bot-top-type-human-dimension-geolocation", "displayName": "Shape Bot Top Type Human Dimension Geolocation", "operationCount": 1 }, { "name": "shape-bot-top-type-human-dimension-platform", "displayName": "Shape Bot Top Type Human Dimension Platform", "operationCount": 1 }, { "name": "shape-bot-top-type-malicious-dimension-app", "displayName": "Shape Bot Top Type Malicious Dimension App", "operationCount": 1 }, { "name": "shape-bot-top-type-malicious-dimension-apps-timeseries", "displayName": "Shape Bot Top Type Malicious Dimension Apps Timeseries", "operationCount": 1 }, { "name": "shape-bot-top-type-malicious-dimension-asorg", "displayName": "Shape Bot Top Type Malicious Dimension Asorg", "operationCount": 1 }, { "name": "shape-bot-top-type-malicious-dimension-attackintent", "displayName": "Shape Bot Top Type Malicious Dimension Attackintent", "operationCount": 1 }, { "name": "shape-bot-top-type-malicious-dimension-automation", "displayName": "Shape Bot Top Type Malicious Dimension Automation", "operationCount": 1 }, { "name": "shape-bot-top-type-malicious-dimension-bfp", "displayName": "Shape Bot Top Type Malicious Dimension Bfp", "operationCount": 1 }, { "name": "shape-bot-top-type-malicious-dimension-endpoints", "displayName": "Shape Bot Top Type Malicious Dimension Endpoints", "operationCount": 1 }, { "name": "shape-bot-top-type-malicious-dimension-ip", "displayName": "Shape Bot Top Type Malicious Dimension Ip", "operationCount": 1 }, { "name": "shape-bot-top-type-malicious-dimension-ua", "displayName": "Shape Bot Top Type Malicious Dimension Ua", "operationCount": 1 }, { "name": "shape-bot-traffic-dimension-attackintent-timeseries", "displayName": "Shape Bot Traffic Dimension Attackintent Timeseries", "operationCount": 1 }, { "name": "shape-bot-traffic-dimension-categories-timeseries", "displayName": "Shape Bot Traffic Dimension Categories Timeseries", "operationCount": 1 }, { "name": "shape-bot-traffic-malicious-dimension-attackintent-timeseries", "displayName": "Shape Bot Traffic Malicious Dimension Attackintent Timeseries", "operationCount": 1 }, { "name": "shape-bot-traffic-malicious-overview-actions", "displayName": "Shape Bot Traffic Malicious Overview Actions", "operationCount": 1 }, { "name": "shape-bot-traffic-malicious-overview-metrics", "displayName": "Shape Bot Traffic Malicious Overview Metrics", "operationCount": 1 }, { "name": "shape-bot-traffic-malicious-overview-timeseries-actions", "displayName": "Shape Bot Traffic Malicious Overview Timeseries Actions", "operationCount": 1 }, { "name": "shape-bot-traffic-overview", "displayName": "Shape Bot Traffic Overview", "operationCount": 1 }, { "name": "shape-bot-traffic-overview-expanded", "displayName": "Shape Bot Traffic Overview Expanded", "operationCount": 1 }, { "name": "shape-bot-traffic-overview-timeseries", "displayName": "Shape Bot Traffic Overview Timeseries", "operationCount": 1 }, { "name": "shape-bot-unarchive", "displayName": "Shape Bot Unarchive", "operationCount": 1 }, { "name": "shape-bot-unsubscribe", "displayName": "Shape Bot Unsubscribe", "operationCount": 1 }, { "name": "shape-bot-usage-summary", "displayName": "Shape Bot Usage Summary", "operationCount": 1 }, { "name": "shape-bot-versions", "displayName": "Shape Bot Versions", "operationCount": 2 }, { "name": "shape-bot-versions-mobile-base-config", "displayName": "Shape Bot Versions Mobile Base Config", "operationCount": 1 }, { "name": "shape-csd", "displayName": "Shape Csd", "operationCount": 4 }, { "name": "shape-csd-affectedUsers", "displayName": "Shape Csd Affectedusers", "operationCount": 1 }, { "name": "shape-csd-analysis", "displayName": "Shape Csd Analysis", "operationCount": 1 }, { "name": "shape-csd-approval-status", "displayName": "Shape Csd Approval Status", "operationCount": 1 }, { "name": "shape-csd-behaviors", "displayName": "Shape Csd Behaviors", "operationCount": 1 }, { "name": "shape-csd-dashboard", "displayName": "Shape Csd Dashboard", "operationCount": 1 }, { "name": "shape-csd-formFields", "displayName": "Shape Csd Formfields", "operationCount": 1 }, { "name": "shape-csd-init", "displayName": "Shape Csd Init", "operationCount": 1 }, { "name": "shape-csd-inline", "displayName": "Shape Csd Inline", "operationCount": 1 }, { "name": "shape-csd-justification", "displayName": "Shape Csd Justification", "operationCount": 2 }, { "name": "shape-csd-metadata-download", "displayName": "Shape Csd Metadata Download", "operationCount": 1 }, { "name": "shape-csd-networkInteractions", "displayName": "Shape Csd Networkinteractions", "operationCount": 1 }, { "name": "shape-csd-overview", "displayName": "Shape Csd Overview", "operationCount": 1 }, { "name": "shape-csd-readStatus", "displayName": "Shape Csd Readstatus", "operationCount": 1 }, { "name": "shape-csd-subscribe", "displayName": "Shape Csd Subscribe", "operationCount": 1 }, { "name": "shape-csd-unsubscribe", "displayName": "Shape Csd Unsubscribe", "operationCount": 1 }, { "name": "shape-dip-app-provision", "displayName": "Shape Dip App Provision", "operationCount": 1 }, { "name": "shape-dip-application", "displayName": "Shape Dip Application", "operationCount": 2 }, { "name": "shape-dip-applications", "displayName": "Shape Dip Applications", "operationCount": 1 }, { "name": "shape-dip-bot-asn", "displayName": "Shape Dip Bot Asn", "operationCount": 1 }, { "name": "shape-dip-bot-transactions", "displayName": "Shape Dip Bot Transactions", "operationCount": 1 }, { "name": "shape-dip-bot-urls", "displayName": "Shape Dip Bot Urls", "operationCount": 1 }, { "name": "shape-dip-dashboard-age", "displayName": "Shape Dip Dashboard Age", "operationCount": 1 }, { "name": "shape-dip-dashboard-applications", "displayName": "Shape Dip Dashboard Applications", "operationCount": 1 }, { "name": "shape-dip-dashboard-asn", "displayName": "Shape Dip Dashboard Asn", "operationCount": 1 }, { "name": "shape-dip-dashboard-country", "displayName": "Shape Dip Dashboard Country", "operationCount": 1 }, { "name": "shape-dip-dashboard-session", "displayName": "Shape Dip Dashboard Session", "operationCount": 1 }, { "name": "shape-dip-dashboard-ua", "displayName": "Shape Dip Dashboard Ua", "operationCount": 1 }, { "name": "shape-dip-dashboard-unique", "displayName": "Shape Dip Dashboard Unique", "operationCount": 1 }, { "name": "shape-dip-enable", "displayName": "Shape Dip Enable", "operationCount": 1 }, { "name": "shape-dip-provision-regions", "displayName": "Shape Dip Provision Regions", "operationCount": 1 }, { "name": "shape-dip-status", "displayName": "Shape Dip Status", "operationCount": 1 }, { "name": "shape-dip-validate-src-tag-injection", "displayName": "Shape Dip Validate Src Tag Injection", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-dashboard-channel", "displayName": "Shape Recognize Recognize Addon Dashboard Channel", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-dashboard-conversion", "displayName": "Shape Recognize Recognize Addon Dashboard Conversion", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-dashboard-enjoy", "displayName": "Shape Recognize Recognize Addon Dashboard Enjoy", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-dashboard-friction-aggregation", "displayName": "Shape Recognize Recognize Addon Dashboard Friction Aggregation", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-dashboard-friction-histogram", "displayName": "Shape Recognize Recognize Addon Dashboard Friction Histogram", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-dashboard-health", "displayName": "Shape Recognize Recognize Addon Dashboard Health", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-dashboard-lift", "displayName": "Shape Recognize Recognize Addon Dashboard Lift", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-dashboard-rescue", "displayName": "Shape Recognize Recognize Addon Dashboard Rescue", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-dashboard-top-reason-code", "displayName": "Shape Recognize Recognize Addon Dashboard Top Reason Code", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-provision", "displayName": "Shape Recognize Recognize Addon Provision", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-state", "displayName": "Shape Recognize Recognize Addon State", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-subscribe", "displayName": "Shape Recognize Recognize Addon Subscribe", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-unsubscribe", "displayName": "Shape Recognize Recognize Addon Unsubscribe", "operationCount": 1 }, { "name": "shape-recognize-recognize-addon-validate-src-tag-injection", "displayName": "Shape Recognize Recognize Addon Validate Src Tag Injection", "operationCount": 1 }, { "name": "shape-safe-sas-block-audit", "displayName": "Shape Safe Sas Block Audit", "operationCount": 1 }, { "name": "shape-safe-sas-block-csv-audit", "displayName": "Shape Safe Sas Block Csv Audit", "operationCount": 1 }, { "name": "shape-safe-sas-block-csv-table", "displayName": "Shape Safe Sas Block Csv Table", "operationCount": 1 }, { "name": "shape-safe-sas-block-details", "displayName": "Shape Safe Sas Block Details", "operationCount": 1 }, { "name": "shape-safe-sas-block-feedback", "displayName": "Shape Safe Sas Block Feedback", "operationCount": 1 }, { "name": "shape-safe-sas-block-rule", "displayName": "Shape Safe Sas Block Rule", "operationCount": 1 }, { "name": "shape-safe-sas-block-table", "displayName": "Shape Safe Sas Block Table", "operationCount": 1 }, { "name": "shape-safe-sas-ep", "displayName": "Shape Safe Sas Ep", "operationCount": 1 }, { "name": "shape-safe-sas-feedback", "displayName": "Shape Safe Sas Feedback", "operationCount": 1 }, { "name": "shape-safe-sas-general-feedback", "displayName": "Shape Safe Sas General Feedback", "operationCount": 1 }, { "name": "shape-safe-sas-health", "displayName": "Shape Safe Sas Health", "operationCount": 1 }, { "name": "shape-safe-sas-provision", "displayName": "Shape Safe Sas Provision", "operationCount": 1 }, { "name": "shape-safe-sas-stats-overview", "displayName": "Shape Safe Sas Stats Overview", "operationCount": 2 }, { "name": "shape-safe-sas-stats-top-locations", "displayName": "Shape Safe Sas Stats Top Locations", "operationCount": 2 }, { "name": "shape-safe-sas-stats-top-sources", "displayName": "Shape Safe Sas Stats Top Sources", "operationCount": 2 }, { "name": "shape-safe-sas-stats-transactions-over-time", "displayName": "Shape Safe Sas Stats Transactions Over Time", "operationCount": 1 }, { "name": "shape-safe-sas-summary", "displayName": "Shape Safe Sas Summary", "operationCount": 1 }, { "name": "shape-safe-sas-transaction-details", "displayName": "Shape Safe Sas Transaction Details", "operationCount": 2 }, { "name": "shape-safe-sas-transaction-device-history", "displayName": "Shape Safe Sas Transaction Device History", "operationCount": 1 }, { "name": "shape-safe-sas-transaction-locations", "displayName": "Shape Safe Sas Transaction Locations", "operationCount": 1 }, { "name": "shape-safe-sas-transaction-related-sessions", "displayName": "Shape Safe Sas Transaction Related Sessions", "operationCount": 1 }, { "name": "shape-safe-sas-transaction-timeline", "displayName": "Shape Safe Sas Transaction Timeline", "operationCount": 1 }, { "name": "shape-safe-sas-transactions", "displayName": "Shape Safe Sas Transactions", "operationCount": 1 }, { "name": "shape-safe-sas-transactions-csv", "displayName": "Shape Safe Sas Transactions Csv", "operationCount": 1 }, { "name": "sid-counters", "displayName": "Sid Counters", "operationCount": 1 }, { "name": "site", "displayName": "Site", "operationCount": 1 }, { "name": "site-apis-apps-v1", "displayName": "Site Apis Apps V1", "operationCount": 1 }, { "name": "site-apis-apps-v1-daemonsets", "displayName": "Site Apis Apps V1 Daemonsets", "operationCount": 1 }, { "name": "site-apis-apps-v1-deployments", "displayName": "Site Apis Apps V1 Deployments", "operationCount": 1 }, { "name": "site-apis-apps-v1-replicasets", "displayName": "Site Apis Apps V1 Replicasets", "operationCount": 1 }, { "name": "site-apis-apps-v1-statefulsets", "displayName": "Site Apis Apps V1 Statefulsets", "operationCount": 1 }, { "name": "site-apis-batch-v1", "displayName": "Site Apis Batch V1", "operationCount": 1 }, { "name": "site-apis-batch-v1-jobs", "displayName": "Site Apis Batch V1 Jobs", "operationCount": 1 }, { "name": "site-apis-batch-v1beta1", "displayName": "Site Apis Batch V1Beta1", "operationCount": 1 }, { "name": "site-apis-batch-v1beta1-cronjobs", "displayName": "Site Apis Batch V1Beta1 Cronjobs", "operationCount": 1 }, { "name": "site-edge", "displayName": "Site Edge", "operationCount": 1 }, { "name": "site-mesh-groups", "displayName": "Site Mesh Groups", "operationCount": 5 }, { "name": "site-metrics", "displayName": "Site Metrics", "operationCount": 1 }, { "name": "site-node", "displayName": "Site Node", "operationCount": 1 }, { "name": "site-pods-metrics", "displayName": "Site Pods Metrics", "operationCount": 1 }, { "name": "site-status", "displayName": "Site Status", "operationCount": 1 }, { "name": "site-v1", "displayName": "Site V1", "operationCount": 1 }, { "name": "site-v1-configmaps", "displayName": "Site V1 Configmaps", "operationCount": 1 }, { "name": "site-v1-endpoints", "displayName": "Site V1 Endpoints", "operationCount": 1 }, { "name": "site-v1-nodes", "displayName": "Site V1 Nodes", "operationCount": 1 }, { "name": "site-v1-persistentvolumeclaims", "displayName": "Site V1 Persistentvolumeclaims", "operationCount": 1 }, { "name": "site-v1-persistentvolumes", "displayName": "Site V1 Persistentvolumes", "operationCount": 1 }, { "name": "site-v1-pods", "displayName": "Site V1 Pods", "operationCount": 1 }, { "name": "site-v1-secrets", "displayName": "Site V1 Secrets", "operationCount": 1 }, { "name": "site-v1-services", "displayName": "Site V1 Services", "operationCount": 1 }, { "name": "site-virtualmachineinstances-metrics", "displayName": "Site Virtualmachineinstances Metrics", "operationCount": 1 }, { "name": "sites", "displayName": "Sites", "operationCount": 3 }, { "name": "sites-global-kubeconfigs", "displayName": "Sites Global Kubeconfigs", "operationCount": 2 }, { "name": "srv6-network-slices", "displayName": "Srv6 Network Slices", "operationCount": 5 }, { "name": "staged-signatures", "displayName": "Staged Signatures", "operationCount": 1 }, { "name": "static-components", "displayName": "Static Components", "operationCount": 2 }, { "name": "static-tenant-settings-tenant-favicon", "displayName": "Static Tenant Settings Tenant Favicon", "operationCount": 1 }, { "name": "static-tenant-settings-tenant-image", "displayName": "Static Tenant Settings Tenant Image", "operationCount": 1 }, { "name": "stats", "displayName": "Stats", "operationCount": 1 }, { "name": "status", "displayName": "Status", "operationCount": 2 }, { "name": "status-at-site", "displayName": "Status At Site", "operationCount": 1 }, { "name": "status-metrics", "displayName": "Status Metrics", "operationCount": 1 }, { "name": "storage-set-vpc-k8s-hostnames", "displayName": "Storage Set Vpc K8S Hostnames", "operationCount": 1 }, { "name": "subnets", "displayName": "Subnets", "operationCount": 5 }, { "name": "suggest-values", "displayName": "Suggest Values", "operationCount": 1 }, { "name": "support-tenant-managed-tenants", "displayName": "Support Tenant Managed Tenants", "operationCount": 1 }, { "name": "suspicious-user-logs", "displayName": "Suspicious User Logs", "operationCount": 1 }, { "name": "suspicious-user-logs-aggregation", "displayName": "Suspicious User Logs Aggregation", "operationCount": 1 }, { "name": "suspicious-user-logs-scroll", "displayName": "Suspicious User Logs Scroll", "operationCount": 2 }, { "name": "suspicious-users", "displayName": "Suspicious Users", "operationCount": 1 }, { "name": "sync-cloud-data-cloud-connect-reapply-vpc-attachment", "displayName": "Sync Cloud Data Cloud Connect Reapply Vpc Attachment", "operationCount": 1 }, { "name": "sync-cloud-data-discover-vpc", "displayName": "Sync Cloud Data Discover Vpc", "operationCount": 1 }, { "name": "sync-cloud-data-securemesh-site-v2-cloud-resources", "displayName": "Sync Cloud Data Securemesh Site V2 Cloud Resources", "operationCount": 1 }, { "name": "tcp-loadbalancers", "displayName": "Tcp Loadbalancers", "operationCount": 5 }, { "name": "tenant-configurations", "displayName": "Tenant Configurations", "operationCount": 5 }, { "name": "tenant-domain-owner-assign", "displayName": "Tenant Domain Owner Assign", "operationCount": 1 }, { "name": "tenant-domain-owner-unassign", "displayName": "Tenant Domain Owner Unassign", "operationCount": 1 }, { "name": "tenant-idm-events-last-login", "displayName": "Tenant Idm Events Last Login", "operationCount": 1 }, { "name": "tenant-idm-events-login", "displayName": "Tenant Idm Events Login", "operationCount": 1 }, { "name": "tenant-idm-events-login-in-time", "displayName": "Tenant Idm Events Login In Time", "operationCount": 1 }, { "name": "tenant-idm-settings", "displayName": "Tenant Idm Settings", "operationCount": 2 }, { "name": "tenant-idm-users-inactive", "displayName": "Tenant Idm Users Inactive", "operationCount": 1 }, { "name": "tenant-lookup", "displayName": "Tenant Lookup", "operationCount": 1 }, { "name": "tenant-management-delegated-access-subscribe", "displayName": "Tenant Management Delegated Access Subscribe", "operationCount": 1 }, { "name": "tenant-management-delegated-access-unsubscribe", "displayName": "Tenant Management Delegated Access Unsubscribe", "operationCount": 1 }, { "name": "tenant-profiles", "displayName": "Tenant Profiles", "operationCount": 5 }, { "name": "tenant-request-delete", "displayName": "Tenant Request Delete", "operationCount": 1 }, { "name": "tenant-settings", "displayName": "Tenant Settings", "operationCount": 2 }, { "name": "tenant-settings-otp-disable", "displayName": "Tenant Settings Otp Disable", "operationCount": 1 }, { "name": "tenant-settings-otp-enable", "displayName": "Tenant Settings Otp Enable", "operationCount": 1 }, { "name": "tenant-settings-tenant-favicon", "displayName": "Tenant Settings Tenant Favicon", "operationCount": 1 }, { "name": "tenant-settings-tenant-image", "displayName": "Tenant Settings Tenant Image", "operationCount": 3 }, { "name": "tenant-settings-tenant-logo", "displayName": "Tenant Settings Tenant Logo", "operationCount": 1 }, { "name": "tenant-support-info", "displayName": "Tenant Support Info", "operationCount": 1 }, { "name": "tenant-tenant-escalation-doc", "displayName": "Tenant Tenant Escalation Doc", "operationCount": 1 }, { "name": "tenants-summary", "displayName": "Tenants Summary", "operationCount": 1 }, { "name": "terraform-force-delete", "displayName": "Terraform Force Delete", "operationCount": 1 }, { "name": "terraform-parameters", "displayName": "Terraform Parameters", "operationCount": 1 }, { "name": "terraform-run", "displayName": "Terraform Run", "operationCount": 1 }, { "name": "test", "displayName": "Test", "operationCount": 1 }, { "name": "third-party-applications", "displayName": "Third Party Applications", "operationCount": 3 }, { "name": "ticket-tracking-systems", "displayName": "Ticket Tracking Systems", "operationCount": 5 }, { "name": "ticket-tracking-systems-jira-projects-issue-types", "displayName": "Ticket Tracking Systems Jira Projects Issue Types", "operationCount": 1 }, { "name": "ticket-tracking-systems-validate-ticket-tracking-system", "displayName": "Ticket Tracking Systems Validate Ticket Tracking System", "operationCount": 1 }, { "name": "top-cloud-connects", "displayName": "Top Cloud Connects", "operationCount": 1 }, { "name": "topology-dc-cluster-group", "displayName": "Topology Dc Cluster Group", "operationCount": 1 }, { "name": "topology-dc-cluster-groups", "displayName": "Topology Dc Cluster Groups", "operationCount": 1 }, { "name": "topology-network-route-tables", "displayName": "Topology Network Route Tables", "operationCount": 1 }, { "name": "topology-route-table", "displayName": "Topology Route Table", "operationCount": 1 }, { "name": "topology-site", "displayName": "Topology Site", "operationCount": 1 }, { "name": "topology-site-mesh-group", "displayName": "Topology Site Mesh Group", "operationCount": 1 }, { "name": "topology-site-mesh-groups", "displayName": "Topology Site Mesh Groups", "operationCount": 1 }, { "name": "topology-site-networks", "displayName": "Topology Site Networks", "operationCount": 1 }, { "name": "topology-tgw-route-tables", "displayName": "Topology Tgw Route Tables", "operationCount": 1 }, { "name": "tpm", "displayName": "Tpm", "operationCount": 4 }, { "name": "tpm-tpm-preauth", "displayName": "Tpm Tpm Preauth", "operationCount": 1 }, { "name": "tpm-tpm-provision", "displayName": "Tpm Tpm Provision", "operationCount": 1 }, { "name": "transit-usage", "displayName": "Transit Usage", "operationCount": 1 }, { "name": "trust-client-suggestion", "displayName": "Trust Client Suggestion", "operationCount": 1 }, { "name": "trusted-ca-lists", "displayName": "Trusted Ca Lists", "operationCount": 5 }, { "name": "tunnels", "displayName": "Tunnels", "operationCount": 5 }, { "name": "udp-loadbalancers", "displayName": "Udp Loadbalancers", "operationCount": 5 }, { "name": "unlink-tickets", "displayName": "Unlink Tickets", "operationCount": 1 }, { "name": "unmark-as-non-api", "displayName": "Unmark As Non Api", "operationCount": 1 }, { "name": "update-allow-advertise-on-public", "displayName": "Update Allow Advertise On Public", "operationCount": 1 }, { "name": "upgrade-os", "displayName": "Upgrade Os", "operationCount": 1 }, { "name": "upgrade-status", "displayName": "Upgrade Status", "operationCount": 1 }, { "name": "upgrade-sw", "displayName": "Upgrade Sw", "operationCount": 1 }, { "name": "usage", "displayName": "Usage", "operationCount": 2 }, { "name": "usage-details", "displayName": "Usage Details", "operationCount": 1 }, { "name": "usage-plans-current", "displayName": "Usage Plans Current", "operationCount": 1 }, { "name": "usage-plans-custom-list", "displayName": "Usage Plans Custom List", "operationCount": 1 }, { "name": "usb-policys", "displayName": "Usb Policys", "operationCount": 5 }, { "name": "user-admin-notifications", "displayName": "User Admin Notifications", "operationCount": 2 }, { "name": "user-admin-notifications-unset", "displayName": "User Admin Notifications Unset", "operationCount": 1 }, { "name": "user-combined-notifications", "displayName": "User Combined Notifications", "operationCount": 2 }, { "name": "user-groups", "displayName": "User Groups", "operationCount": 2 }, { "name": "user-identifications", "displayName": "User Identifications", "operationCount": 5 }, { "name": "user-notifications", "displayName": "User Notifications", "operationCount": 2 }, { "name": "user-notifications-unset", "displayName": "User Notifications Unset", "operationCount": 1 }, { "name": "user-otp-admin-reset", "displayName": "User Otp Admin Reset", "operationCount": 1 }, { "name": "user-sessions", "displayName": "User Sessions", "operationCount": 1 }, { "name": "user-settings", "displayName": "User Settings", "operationCount": 2 }, { "name": "user-settings-idm-disable", "displayName": "User Settings Idm Disable", "operationCount": 1 }, { "name": "user-settings-idm-enable", "displayName": "User Settings Idm Enable", "operationCount": 1 }, { "name": "user-settings-image", "displayName": "User Settings Image", "operationCount": 3 }, { "name": "user-settings-request-initial-access", "displayName": "User Settings Request Initial Access", "operationCount": 1 }, { "name": "user-settings-view-preference", "displayName": "User Settings View Preference", "operationCount": 2 }, { "name": "validate-config", "displayName": "Validate Config", "operationCount": 1 }, { "name": "validate-rules", "displayName": "Validate Rules", "operationCount": 1 }, { "name": "verify", "displayName": "Verify", "operationCount": 1 }, { "name": "view-internal", "displayName": "View Internal", "operationCount": 1 }, { "name": "virtual-hosts", "displayName": "Virtual Hosts", "operationCount": 5 }, { "name": "virtual-k8ss", "displayName": "Virtual K8Ss", "operationCount": 5 }, { "name": "virtual-networks", "displayName": "Virtual Networks", "operationCount": 5 }, { "name": "virtual-sites", "displayName": "Virtual Sites", "operationCount": 5 }, { "name": "vk8s-audit-logs", "displayName": "Vk8S Audit Logs", "operationCount": 1 }, { "name": "vk8s-events", "displayName": "Vk8S Events", "operationCount": 1 }, { "name": "voltstack-sites", "displayName": "Voltstack Sites", "operationCount": 5 }, { "name": "vulnerabilities", "displayName": "Vulnerabilities", "operationCount": 1 }, { "name": "vulnerability-update-state", "displayName": "Vulnerability Update State", "operationCount": 1 }, { "name": "waf-exclusion-policys", "displayName": "Waf Exclusion Policys", "operationCount": 5 }, { "name": "waf-exclusion-suggestion", "displayName": "Waf Exclusion Suggestion", "operationCount": 1 }, { "name": "waf-threat-campaign", "displayName": "Waf Threat Campaign", "operationCount": 1 }, { "name": "waf-update", "displayName": "Waf Update", "operationCount": 1 }, { "name": "was-user-token", "displayName": "Was User Token", "operationCount": 1 }, { "name": "workload-flavors", "displayName": "Workload Flavors", "operationCount": 5 }, { "name": "workloads", "displayName": "Workloads", "operationCount": 5 }, ]; export const API_CATALOG_DATA: Readonly> = { "access-logs": { "name": "access-logs", "displayName": "Access Logs", "operations": [ { "name": "create_access_log", "description": "Access Log Query V2.", "method": "POST", "path": "/api/data/namespaces/{namespace}/access_logs", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "Request to fetch access logs.", "title": "AccessLogRequestV2", "x-displayname": "Access Log Request V2.", "x-ves-proto-message": "ves.io.schema.log.AccessLogRequestV2", "properties": { "aggs": { "type": "object", "description": "Aggregations provide summary/analytics data over the log response. If the number of logs that matched the query\nis large and cannot be returned in a single response message, user can GET helpful insights/summary using aggregations.\nThe aggregations are key'ed by user-defined aggregation name. The response will be key'ed with the same name.\nOptional.", "title": "aggregations", "x-displayname": "Aggregations.", "x-f5xc-description-short": "Aggregations provide summary/analytics data over the log response.", "x-f5xc-description-medium": "Aggregations provide summary/analytics data over the log response. If the number of logs that matched the query is large and cannot be returned in a single response message, user can GET helpful insights/summary using aggregations. The aggregations are key'ed by user-defined aggregation name.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "end_time": { "type": "string", "description": "Fetch access logs whose timestamp <= end_time\nformat: unix_timestamp|RFC 3339\n\nOptional: If not specified, then the end_time will be evaluated to start_time+10m\nIf start_time is not specified, then the end_time will be evaluated to ", "title": "end time", "x-displayname": "End Time", "x-ves-example": "2019-09-24T12:30:11.733Z.", "x-ves-validation-rules": { "ves.io.schema.rules.string.query_time": "true" }, "x-f5xc-example": "2019-09-24T12:30:11.733Z", "x-validation-rules": { "ves.io.schema.rules.string.query_time": "true" }, "x-f5xc-description-short": "Fetch access logs whose timestamp <= end_time format: unix_timestamp|RFC 3339 Optional: If not specified, then the end_time will be evaluated to...", "x-f5xc-description-medium": "Fetch access logs whose timestamp <= end_time format: unix_timestamp|RFC 3339 Optional: If not specified, then the end_time will be evaluated to start_time+10m If start_time is not specified, then the end_time will be evaluated to .", "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "limit": { "type": "integer", "description": "Limits the number of logs returned in the response\nOptional: If not specified, first or last 500 log messages that matches the query (depending on the sort order) will be returned in the response.\nThe maximum value for limit is 500.", "title": "limit", "format": "int32", "x-displayname": "Limit", "x-ves-example": "0", "x-f5xc-example": "0", "x-f5xc-description-short": "Limits the number of logs returned in the response Optional: If not specified, first or last 500 log messages that matches the query (depending on...", "x-f5xc-description-medium": "Limits the number of logs returned in the response Optional: If not specified, first or last 500 log messages that matches the query (depending on the sort order) will be returned in the response. The maximum value for limit is 500.", "x-f5xc-constraints": { "constraintType": "number", "category": "policy", "minimum": 1, "maximum": 1000000, "multipleOf": 1, "metadata": { "source": "inferred", "confidence": 0.75, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Fetch access logs for a given namespace.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Value", "x-f5xc-example": "value", "x-f5xc-description-short": "Fetch access logs for a given namespace.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "query": { "type": "string", "description": "Query is used to specify the list of matchers\nsyntax for query := {[]}\n := \"\"\n := string\nOne or more of following fields in access log may be specified in the query.\nApp_type - application type\nvh_name - name of the virtual host\nsrc_site - source site\nsrc - source service\nsrc_instance - source instance\ndst_site - destination site\ndst - destination service\ndst_instance - destination instance\nmethod - request method\nreq_path - request path\nrsp_code - response code\nbrowser_type - browser type\ncity - name of the city\ncountry - country code\ndevice_type - device type\n := string\n := [\"=\"|\"!=\"|\"=~\"|\"!~\"]\n= : equal to\n!= : not equal to\n=~ : regex match\n!~ : not regex match\nWhen more than one matcher is specified in the query, then access logs matching ALL the matchers will be returned in the response.\nExample: query={src=\"service1\", dst=\"service2\"} will return all access logs with source service \"service1\" and the destination service \"service2\"\nquery={vh_name=\"vh1\", rsp_code=~\"4.*\"} will return all access logs for virtual-host \"vh1\" with response code 4xx\n\nOptional: If not specified, all the access logs matching the given tenant, namespace will be returned in the response.", "title": "query", "x-displayname": "Query", "x-ves-example": "{vh_name=\\\"productpage\\\"}", "x-f5xc-example": "\"{vh_name=\\\"productpage\\\"}\"", "x-f5xc-description-short": "Query is used to specify the list of matchers syntax for query := {[]} := \"\" :=...", "x-f5xc-description-medium": "Query is used to specify the list of matchers syntax for query := {[]} := \"\" := string One or more of following fields in access log may be specified in the query. App_type - application type vh_name - name of the virtual host src_site...", "x-f5xc-constraints": { "constraintType": "string", "category": "content", "maxLength": 1024, "minLength": 0, "metadata": { "source": "inferred", "confidence": 0.75, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "scroll": { "type": "boolean", "description": "Scroll is used to retrieve large number of log messages (or all log messages) that matches the query.\nIf scroll is set to true, the scroll_id in the response can be used in the scroll API to fetch the next\nbatch of logs until there are no more logs left to return. The number of messages in each batch is determined\nby the limit field.\nNote: Scroll is used for processing large amount of data and therefore is not intended for real time user request.\nOptional: default is false.", "title": "scroll", "format": "boolean", "x-displayname": "Scroll", "x-ves-example": "True", "x-f5xc-example": "true", "x-f5xc-description-short": "Scroll is used to retrieve large number of log messages (or all log messages) that matches the query.", "x-f5xc-description-medium": "Scroll is used to retrieve large number of log messages (or all log messages) that matches the query. If scroll is set to true, the scroll_id in the response can be used in the scroll API to fetch the next batch of logs until there are no more logs left to return. The number of messages in each...", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "search_after": { "type": "boolean", "description": "Search After is used to retrieve large number of log messages (or all log messages) that matches the query.\nIf search_after is set to true, the sort_values in the response can be used in the API to fetch the next\nbatch of logs. The number of messages in each batch is determined by the limit field.\nNote: Search After is used for processing large amount of data and therefore is not intended for real time user request.\nOptional: default is false.", "title": "search after", "format": "boolean", "x-displayname": "Search After.", "x-ves-example": "True", "x-f5xc-example": "true", "x-f5xc-description-short": "Search After is used to retrieve large number of log messages (or all log messages) that matches the query.", "x-f5xc-description-medium": "Search After is used to retrieve large number of log messages (or all log messages) that matches the query. If search_after is set to true, the sort_values in the response can be used in the API to fetch the next batch of logs. The number of messages in each batch is determined by the limit field.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "sort": { "allOf": [ { "$ref": "#/components/schemas/schemaSortOrder" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "sort_values": { "allOf": [ { "$ref": "#/components/schemas/logSearchAfterSortValues" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "start_time": { "type": "string", "description": "Fetch access logs whose timestamp >= start_time\nformat: unix_timestamp|RFC 3339\n\nOptional: If not specified, then the start_time will be evaluated to end_time-10m\nIf end_time is not specified, then the start_time will be evaluated to -10m.", "title": "start time", "x-displayname": "Start Time.", "x-ves-example": "2019-09-23T12:30:11.733Z.", "x-ves-validation-rules": { "ves.io.schema.rules.string.query_time": "true" }, "x-f5xc-example": "2019-09-23T12:30:11.733Z", "x-validation-rules": { "ves.io.schema.rules.string.query_time": "true" }, "x-f5xc-description-short": "Fetch access logs whose timestamp >= start_time format: unix_timestamp|RFC 3339 Optional: If not specified, then the start_time will be evaluated...", "x-f5xc-description-medium": "Fetch access logs whose timestamp >= start_time format: unix_timestamp|RFC 3339 Optional: If not specified, then the start_time will be evaluated to end_time-10m If end_time is not specified, then the start_time will be evaluated to -10m.", "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for logAccessLogRequestV2", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for logAccessLogRequestV2\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "statistics" }, "responseSchema": { "type": "object", "properties": { "aggs": { "type": "object" }, "logs": { "type": "array" }, "scroll_id": { "type": "string" }, "total_hits": { "type": "string" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for logAccessLogRequestV2" }, "fieldMetadata": { "aggs": { "type": "object", "description": "Aggregations provide summary/analytics data over the log response. If the number of logs that matched the query\nis large and cannot be returned in a single response message, user can GET helpful insights/summary using aggregations.\nThe aggregations are key'ed by user-defined aggregation name. The response will be key'ed with the same name.\nOptional.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "end_time": { "type": "string", "description": "Fetch access logs whose timestamp <= end_time\nformat: unix_timestamp|RFC 3339\n\nOptional: If not specified, then the end_time will be evaluated to start_time+10m\nIf start_time is not specified, then the end_time will be evaluated to ", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "limit": { "type": "integer", "description": "Limits the number of logs returned in the response\nOptional: If not specified, first or last 500 log messages that matches the query (depending on the sort order) will be returned in the response.\nThe maximum value for limit is 500.", "constraints": { "constraintType": "number", "category": "policy", "minimum": 1, "maximum": 1000000, "multipleOf": 1, "metadata": { "source": "inferred", "confidence": 0.75, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Fetch access logs for a given namespace.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "query": { "type": "string", "description": "Query is used to specify the list of matchers\nsyntax for query := {[]}\n := \"\"\n := string\nOne or more of following fields in access log may be specified in the query.\nApp_type - application type\nvh_name - name of the virtual host\nsrc_site - source site\nsrc - source service\nsrc_instance - source instance\ndst_site - destination site\ndst - destination service\ndst_instance - destination instance\nmethod - request method\nreq_path - request path\nrsp_code - response code\nbrowser_type - browser type\ncity - name of the city\ncountry - country code\ndevice_type - device type\n := string\n := [\"=\"|\"!=\"|\"=~\"|\"!~\"]\n= : equal to\n!= : not equal to\n=~ : regex match\n!~ : not regex match\nWhen more than one matcher is specified in the query, then access logs matching ALL the matchers will be returned in the response.\nExample: query={src=\"service1\", dst=\"service2\"} will return all access logs with source service \"service1\" and the destination service \"service2\"\nquery={vh_name=\"vh1\", rsp_code=~\"4.*\"} will return all access logs for virtual-host \"vh1\" with response code 4xx\n\nOptional: If not specified, all the access logs matching the given tenant, namespace will be returned in the response.", "constraints": { "constraintType": "string", "category": "content", "maxLength": 1024, "minLength": 0, "metadata": { "source": "inferred", "confidence": 0.75, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "scroll": { "type": "boolean", "description": "Scroll is used to retrieve large number of log messages (or all log messages) that matches the query.\nIf scroll is set to true, the scroll_id in the response can be used in the scroll API to fetch the next\nbatch of logs until there are no more logs left to return. The number of messages in each batch is determined\nby the limit field.\nNote: Scroll is used for processing large amount of data and therefore is not intended for real time user request.\nOptional: default is false.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "search_after": { "type": "boolean", "description": "Search After is used to retrieve large number of log messages (or all log messages) that matches the query.\nIf search_after is set to true, the sort_values in the response can be used in the API to fetch the next\nbatch of logs. The number of messages in each batch is determined by the limit field.\nNote: Search After is used for processing large amount of data and therefore is not intended for real time user request.\nOptional: default is false.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "sort": { "type": "string", "description": "Sort algorithm\n\nSort in descending order\nSort in ascending order.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "default": "DESCENDING" }, "sort_values": { "type": "object", "description": "These are timestamp and doc_id values returned by elastic search in the search request.\nClient is expected to set these values in a subsequent request to GET the next page of results.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "sort_values.last_doc_id": { "type": "string", "description": "This is a unique UUID generated by elastic search.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "sort_values.last_timestamp": { "type": "number", "description": "Configuration parameter for last timestamp", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "start_time": { "type": "string", "description": "Fetch access logs whose timestamp >= start_time\nformat: unix_timestamp|RFC 3339\n\nOptional: If not specified, then the start_time will be evaluated to end_time-10m\nIf end_time is not specified, then the start_time will be evaluated to -10m.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "aggs", "type": "object", "description": "Aggregations provide summary/analytics data over the log response. If the number of logs that matched the query\nis large and cannot be returned in a single response message, user can GET helpful insights/summary using aggregations.\nThe aggregation data is key'ed with the aggregation name specified in the request." }, { "field": "last_sort_values", "type": "object", "description": "" }, { "field": "logs", "type": "array", "description": "List of log messages that matched the query. Not all log messages that matched the query are returned in the response." }, { "field": "scroll_id", "type": "string", "description": "Long Base-64 encoded string which can be used to retrieve next batch of log messages using the scroll request.\nEmpty scroll_id indicates no more messages to scroll (EOF).\nNote: scroll_id is valid only for 2 minutes. I.e., If one intend to retrieve next batch of the result, then the\nscroll request should be sent within 2 minutes upon receiving the LogResponse." }, { "field": "total_hits", "type": "string", "description": "Total number of log messages that matched the query." } ] } ] }, "active-alert-policies": { "name": "active-alert-policies", "displayName": "Active Alert Policies", "operations": [ { "name": "list_active_alert_policies", "description": "GET Active Alert Policies.", "method": "GET", "path": "/api/config/namespaces/{namespace}/active_alert_policies", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "responseSchema": { "type": "object", "properties": { "alert_policies": { "type": "array" }, "alert_policies_status": { "type": "array" } } }, "responseSummary": [ { "field": "alert_policies", "type": "array", "description": "A list of references to alert_policy objects." }, { "field": "alert_policies_status", "type": "array", "description": "The status of alert policies." } ] }, { "name": "create_active_alert_policie", "description": "Set Active Alert Policies.", "method": "POST", "path": "/api/config/namespaces/{namespace}/active_alert_policies", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "SetActiveAlertPoliciesRequest is the shape of the request for SetActiveAlertPolicies.", "title": "SetActiveAlertPoliciesRequest", "x-displayname": "Request for SetActiveAlertPolicies.", "x-ves-proto-message": "ves.io.schema.namespace.SetActiveAlertPoliciesRequest", "properties": { "alert_policies": { "type": "array", "description": "A list of references to alert_policy objects.", "title": "alert_policies", "maxItems": 32, "items": { "$ref": "#/components/schemas/schemaviewsObjectRefType" }, "x-displayname": "Alert Policies.", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.max_items": "32" }, "x-validation-rules": { "ves.io.schema.rules.repeated.max_items": "32" }, "x-f5xc-description-short": "List of references to alert_policy objects.", "x-f5xc-constraints": { "constraintType": "array", "category": "discovery", "maxItems": 32, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "The name of the namespace.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-description-short": "SetActiveAlertPoliciesRequest is the shape of the request for SetActiveAlertPolicies.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for namespaceSetActiveAlertPoliciesRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for namespaceSetActiveAlertPoliciesRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "tenant_and_identity" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for namespaceSetActiveAlertPoliciesRequest" }, "fieldMetadata": { "alert_policies": { "type": "array", "description": "A list of references to alert_policy objects.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 32, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "The name of the namespace.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } } } ] }, "active-network-policies": { "name": "active-network-policies", "displayName": "Active Network Policies", "operations": [ { "name": "list_active_network_policies", "description": "GET Active Network Policies.", "method": "GET", "path": "/api/config/namespaces/{namespace}/active_network_policies", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "responseSchema": { "type": "object", "properties": { "network_policies": { "type": "array" } } }, "responseSummary": [ { "field": "network_policies", "type": "array", "description": "A list of references to network_policy objects." } ] }, { "name": "create_active_network_policie", "description": "Set Active Network Policies.", "method": "POST", "path": "/api/config/namespaces/{namespace}/active_network_policies", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "SetActiveNetworkPoliciesRequest is the shape of the request for SetActiveNetworkPolicies.", "title": "SetActiveNetworkPoliciesRequest", "x-displayname": "Request for SetActiveNetworkPolicies.", "x-ves-proto-message": "ves.io.schema.namespace.SetActiveNetworkPoliciesRequest", "properties": { "namespace": { "type": "string", "description": "The name of the namespace.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "network_policies": { "type": "array", "description": "A list of references to network_policy objects.", "title": "network_policies", "maxItems": 32, "items": { "$ref": "#/components/schemas/schemaviewsObjectRefType" }, "x-displayname": "Network Policies.", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.max_items": "32" }, "x-validation-rules": { "ves.io.schema.rules.repeated.max_items": "32" }, "x-f5xc-description-short": "List of references to network_policy objects.", "x-f5xc-constraints": { "constraintType": "array", "category": "discovery", "maxItems": 32, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-description-short": "SetActiveNetworkPoliciesRequest is the shape of the request for SetActiveNetworkPolicies.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for namespaceSetActiveNetworkPoliciesRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for namespaceSetActiveNetworkPoliciesRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "tenant_and_identity" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for namespaceSetActiveNetworkPoliciesRequest" }, "fieldMetadata": { "namespace": { "type": "string", "description": "The name of the namespace.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "network_policies": { "type": "array", "description": "A list of references to network_policy objects.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 32, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } } } ] }, "active-service-policies": { "name": "active-service-policies", "displayName": "Active Service Policies", "operations": [ { "name": "list_active_service_policies", "description": "GET Active Service Policies.", "method": "GET", "path": "/api/config/namespaces/{namespace}/active_service_policies", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "responseSchema": { "type": "object", "properties": { "service_policies": { "type": "array" } } }, "responseSummary": [ { "field": "service_policies", "type": "array", "description": "A list of references to service_policy objects." } ] }, { "name": "create_active_service_policie", "description": "Set Active Service Policies.", "method": "POST", "path": "/api/config/namespaces/{namespace}/active_service_policies", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "SetActiveServicePoliciesRequest is the shape of the request for SetActiveServicePolicies.", "title": "SetActiveServicePoliciesRequest", "x-displayname": "Request for SetActiveServicePolicies.", "x-ves-proto-message": "ves.io.schema.namespace.SetActiveServicePoliciesRequest", "properties": { "namespace": { "type": "string", "description": "The name of the namespace.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "service_policies": { "type": "array", "description": "Service Policies is a sequential engine where policies (and rules within the policy) are evaluated one after the other. It's important to define the\ncorrect order (policies evaluated from top to bottom in the list) for service policies, to GET the intended result.\nFor each request, its characteristics are evaluated based on the match criteria in each service policy starting at the top. If there is a match in the\ncurrent policy, then the policy takes effect, and no more policies are evaluated. Otherwise, the next policy is evaluated.\nIf all policies are evaluated and none match, then the request will be denied by default.", "title": "service_policies", "maxItems": 32, "items": { "$ref": "#/components/schemas/schemaviewsObjectRefType" }, "x-displayname": "Service Policies.", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.max_items": "32" }, "x-validation-rules": { "ves.io.schema.rules.repeated.max_items": "32" }, "x-f5xc-description-short": "Service Policies is a sequential engine where policies (and rules within the policy) are evaluated one after the other.", "x-f5xc-description-medium": "Service Policies is a sequential engine where policies (and rules within the policy) are evaluated one after the other. It's important to define the correct order (policies evaluated from top to bottom in the list) for service policies, to GET the intended result. For each request, its...", "x-f5xc-constraints": { "constraintType": "array", "category": "discovery", "maxItems": 32, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-description-short": "SetActiveServicePoliciesRequest is the shape of the request for SetActiveServicePolicies.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for namespaceSetActiveServicePoliciesRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for namespaceSetActiveServicePoliciesRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "tenant_and_identity" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for namespaceSetActiveServicePoliciesRequest" }, "fieldMetadata": { "namespace": { "type": "string", "description": "The name of the namespace.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "service_policies": { "type": "array", "description": "Service Policies is a sequential engine where policies (and rules within the policy) are evaluated one after the other. It's important to define the\ncorrect order (policies evaluated from top to bottom in the list) for service policies, to GET the intended result.\nFor each request, its characteristics are evaluated based on the match criteria in each service policy starting at the top. If there is a match in the\ncurrent policy, then the policy takes effect, and no more policies are evaluated. Otherwise, the next policy is evaluated.\nIf all policies are evaluated and none match, then the request will be denied by default.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 32, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } } } ] }, "active-staged-signatures": { "name": "active-staged-signatures", "displayName": "Active Staged Signatures", "operations": [ { "name": "list_active_staged_signatures", "description": "Active Staged Signatures.", "method": "GET", "path": "/api/config/namespaces/{namespace}/virtual_hosts/{vh_name}/active_staged_signatures", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "vh_name", "in": "path", "required": true, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "release_signatures": { "type": "array" } } }, "responseSummary": [ { "field": "release_signatures", "type": "array", "description": "Release Signatures." } ] } ] }, "addon-services": { "name": "addon-services", "displayName": "Addon Services", "operations": [ { "name": "list_addon_services", "description": "List Addon Service.", "method": "GET", "path": "/api/web/namespaces/{namespace}/addon_services", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "get_addon_service", "description": "GET Addon Service.", "method": "GET", "path": "/api/web/namespaces/{namespace}/addon_services/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "status": { "type": "array" } } }, "responseSummary": [ { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "spec", "type": "object", "description": "" }, { "field": "status", "type": "array", "description": "The status reported by different services for this configuration object." }, { "field": "system_metadata", "type": "object", "description": "" } ] } ] }, "addon-services-activation-status": { "name": "addon-services-activation-status", "displayName": "Addon Services Activation Status", "operations": [ { "name": "list_addon_services_activation_status", "description": "Addon Service Activation Status.", "method": "GET", "path": "/api/web/namespaces/system/addon_services/{addon_service}/activation-status", "dangerLevel": "low", "parameters": [ { "name": "addon_service", "in": "path", "required": true, "type": "string" } ], "responseSchema": { "type": "object", "properties": {} }, "responseSummary": [ { "field": "state", "type": "object", "description": "" } ] } ] }, "addon-services-all-activation-status": { "name": "addon-services-all-activation-status", "displayName": "Addon Services All Activation Status", "operations": [ { "name": "list_addon_services_all_activation_status", "description": "All Addon Service Activation Status.", "method": "GET", "path": "/api/web/namespaces/system/addon_services/{addon_service}/all-activation-status", "dangerLevel": "low", "parameters": [ { "name": "addon_service", "in": "path", "required": true, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "activation_states": { "type": "object" } } }, "responseSummary": [ { "field": "activation_states", "type": "object", "description": "Current state of addon service subscription. The key is the name of the service." } ] } ] }, "addon-subscribe": { "name": "addon-subscribe", "displayName": "Addon Subscribe", "operations": [ { "name": "create_addon_subscribe", "description": "Subscribe to XC addon services.", "method": "POST", "path": "/api/web/namespaces/system/addon/subscribe", "dangerLevel": "medium", "parameters": [], "bodySchema": { "type": "object", "description": "Request to subscribe to one of addon services.", "title": "SubscribeRequest", "x-displayname": "Subscribe request.", "x-ves-oneof-field-addon_choice": "[\"f5xc_appstack_standard\",\"f5xc_big_ip_irule_standard\",\"f5xc_bigip_utilities_standard\",\"f5xc_content_delivery_network_advanced\",\"f5xc_content_delivery_network_standard\",\"f5xc_delegated_access_standard\",\"f5xc_securemesh_advanced\",\"f5xc_securemesh_standard\",\"f5xc_site_management_standard\",\"f5xc_synthetic_monitoring_standard\",\"f5xc_waap_advanced\",\"f5xc_waap_standard\",\"f5xc_web_app_scanning_standard\"]", "x-ves-proto-message": "ves.io.schema.subscription.SubscribeRequest", "properties": { "f5xc_appstack_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc appstack standard.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_big_ip_irule_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_bigip_utilities_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_content_delivery_network_advanced": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc content delivery network advanced.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_content_delivery_network_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc content delivery network standard.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_delegated_access_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc delegated access standard.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_securemesh_advanced": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_securemesh_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_site_management_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_synthetic_monitoring_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc synthetic monitoring standard.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_waap_advanced": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc waap advanced.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_waap_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc waap standard.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_web_app_scanning_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-description-short": "Request to subscribe to one of addon services.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for subscriptionSubscribeRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for subscriptionSubscribeRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "billing_and_usage" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for subscriptionSubscribeRequest" }, "fieldMetadata": { "f5xc_appstack_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_big_ip_irule_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_bigip_utilities_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_content_delivery_network_advanced": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_content_delivery_network_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_delegated_access_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_securemesh_advanced": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_securemesh_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_site_management_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_synthetic_monitoring_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_waap_advanced": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_waap_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_web_app_scanning_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "addon_choice": [ "f5xc_appstack_standard", "f5xc_big_ip_irule_standard", "f5xc_bigip_utilities_standard", "f5xc_content_delivery_network_advanced", "f5xc_content_delivery_network_standard", "f5xc_delegated_access_standard", "f5xc_securemesh_advanced", "f5xc_securemesh_standard", "f5xc_site_management_standard", "f5xc_synthetic_monitoring_standard", "f5xc_waap_advanced", "f5xc_waap_standard", "f5xc_web_app_scanning_standard" ] } } ] }, "addon-subscriptions": { "name": "addon-subscriptions", "displayName": "Addon Subscriptions", "operations": [ { "name": "create_addon_subscription", "description": "Create Addon Subscription.", "method": "POST", "path": "/api/web/namespaces/{namespace}/addon_subscriptions", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Create' RPC.", "title": "CreateRequest is used to create an instance of addon_subscription", "x-displayname": "Create Request.", "x-ves-proto-message": "ves.io.schema.pbac.addon_subscription.CreateRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectCreateMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/addon_subscriptionCreateSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for addon_subscriptionCreateRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for addon_subscriptionCreateRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "marketplace" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for addon_subscriptionCreateRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Create a new Addon Subscription with Addon Subscription State.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.addon_service": { "type": "object", "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.addon_service.name": { "type": "string", "description": "When a configuration object(e.g. Virtual_host) refers to another(e.g route)\nthen name will hold the referred object's(e.g. Route's) name.", "constraints": { "constraintType": "string", "category": "discovery", "minLength": 1, "maxLength": 128, "byteLength": { "max": 128, "min": 1 }, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.addon_service.namespace": { "type": "string", "description": "When a configuration object(e.g. Virtual_host) refers to another(e.g route)\nthen namespace will hold the referred object's(e.g. Route's) namespace.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true, "byteLength": { "max": 64 } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.addon_service.tenant": { "type": "string", "description": "When a configuration object(e.g. Virtual_host) refers to another(e.g route)\nthen tenant will hold the referred object's(e.g. Route's) tenant.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 64, "byteLength": { "max": 64 }, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_preference": { "type": "object", "description": "NotificationPreference preference for receiving addon subscription notifications.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_preference.emails": { "type": "object", "description": "Addon Subscription Emails associated with the Addon Subscription.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_preference.support_ticket_id": { "type": "object", "description": "SupportTicketId gives the information about ticket created for managed addon subscription.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.status": { "type": "string", "description": "Represents the different states of an addon subscription.\n\n- SUBSCRIPTION_PENDING: Subscription Pending\n\nIndicates that the subscription is pending enablement.\n- SUBSCRIPTION_ENABLED: Subscription Enabled\n\nIndicates that the subscription is currently enabled and active.\n- SUBSCRIPTION_DISABLE_PENDING: Subscription Disable Pending\n\nIndicates that the addon disable process is pending.\n- SUBSCRIPTION_DISABLED: Subscription Disabled\n\nIndicates that the addon has been disabled.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "default": "SUBSCRIPTION_PENDING" } }, "oneOfVariants": { "spec.notification_preference.notification_type": [ "emails", "support_ticket_id" ] }, "responseSummary": [ { "field": "metadata", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "system_metadata", "type": "object", "description": "" } ] }, { "name": "replace_addon_subscription", "description": "Replace Addon Subscription.", "method": "PUT", "path": "/api/web/namespaces/{namespace}/addon_subscriptions/{name}", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Replace' RPC.", "title": "ReplaceRequest is used to replace contents of a addon_subscription", "x-displayname": "Replace Request.", "x-ves-proto-message": "ves.io.schema.pbac.addon_subscription.ReplaceRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectReplaceMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/addon_subscriptionReplaceSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "resource_version": { "type": "string", "x-f5xc-concurrency-token": { "server_assigned": true, "echo_on_operations": [ "replace" ] } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for addon_subscriptionReplaceRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for addon_subscriptionReplaceRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "marketplace" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for addon_subscriptionReplaceRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Replace a given Addon Subscription with with Addon Subscription State.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.addon_service": { "type": "object", "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.addon_service.name": { "type": "string", "description": "When a configuration object(e.g. Virtual_host) refers to another(e.g route)\nthen name will hold the referred object's(e.g. Route's) name.", "constraints": { "constraintType": "string", "category": "discovery", "minLength": 1, "maxLength": 128, "byteLength": { "max": 128, "min": 1 }, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.addon_service.namespace": { "type": "string", "description": "When a configuration object(e.g. Virtual_host) refers to another(e.g route)\nthen namespace will hold the referred object's(e.g. Route's) namespace.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true, "byteLength": { "max": 64 } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.addon_service.tenant": { "type": "string", "description": "When a configuration object(e.g. Virtual_host) refers to another(e.g route)\nthen tenant will hold the referred object's(e.g. Route's) tenant.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 64, "byteLength": { "max": 64 }, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_preference": { "type": "object", "description": "NotificationPreference preference for receiving addon subscription notifications.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_preference.emails": { "type": "object", "description": "Addon Subscription Emails associated with the Addon Subscription.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_preference.support_ticket_id": { "type": "object", "description": "SupportTicketId gives the information about ticket created for managed addon subscription.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.status": { "type": "string", "description": "Represents the different states of an addon subscription.\n\n- SUBSCRIPTION_PENDING: Subscription Pending\n\nIndicates that the subscription is pending enablement.\n- SUBSCRIPTION_ENABLED: Subscription Enabled\n\nIndicates that the subscription is currently enabled and active.\n- SUBSCRIPTION_DISABLE_PENDING: Subscription Disable Pending\n\nIndicates that the addon disable process is pending.\n- SUBSCRIPTION_DISABLED: Subscription Disabled\n\nIndicates that the addon has been disabled.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "default": "SUBSCRIPTION_PENDING" } }, "oneOfVariants": { "spec.notification_preference.notification_type": [ "emails", "support_ticket_id" ] } }, { "name": "list_addon_subscriptions", "description": "List Addon Subscrption.", "method": "GET", "path": "/api/web/namespaces/{namespace}/addon_subscriptions", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "delete_addon_subscription", "description": "DELETE Addon Subscrption.", "method": "DELETE", "path": "/api/web/namespaces/{namespace}/addon_subscriptions/{name}", "dangerLevel": "high", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'DELETE' RPC.", "title": "DeleteRequest is used to delete a addon_subscription", "x-displayname": "DELETE Request.", "x-ves-proto-message": "ves.io.schema.pbac.addon_subscription.DeleteRequest", "properties": { "fail_if_referred": { "type": "boolean", "description": "Fail the DELETE operation if this object is being referred by other objects.", "title": "fail_if_referred", "format": "boolean", "x-displayname": "Fail-If-Referred.", "x-f5xc-description-short": "Fail the DELETE operation if this object is being referred by other objects.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Name of the configuration object.", "title": "name", "x-displayname": "Name", "x-ves-example": "Name", "x-f5xc-example": "name", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the configuration object is present.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-description-short": "Namespace in which the configuration object is present.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for addon_subscriptionDeleteRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for addon_subscriptionDeleteRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "marketplace" } }, { "name": "get_addon_subscription", "description": "GET Addon Subscription.", "method": "GET", "path": "/api/web/namespaces/{namespace}/addon_subscriptions/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "resource_version": { "type": "string" } } }, "responseSummary": [ { "field": "create_form", "type": "object", "description": "" }, { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "replace_form", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "system_metadata", "type": "object", "description": "" }, { "field": "resource_version", "type": "string", "description": "" } ] } ] }, "addon-unsubscribe": { "name": "addon-unsubscribe", "displayName": "Addon Unsubscribe", "operations": [ { "name": "create_addon_unsubscribe", "description": "Unsubscribe to XC addon services.", "method": "POST", "path": "/api/web/namespaces/system/addon/unsubscribe", "dangerLevel": "medium", "parameters": [], "bodySchema": { "type": "object", "description": "Request to unsubscribe to one of addon services.", "title": "UnsubscribeRequest", "x-displayname": "Unsubscribe request.", "x-ves-oneof-field-addon_choice": "[\"f5xc_appstack_standard\",\"f5xc_big_ip_irule_standard\",\"f5xc_bigip_utilities_standard\",\"f5xc_content_delivery_network_advanced\",\"f5xc_content_delivery_network_standard\",\"f5xc_delegated_access_standard\",\"f5xc_securemesh_advanced\",\"f5xc_securemesh_standard\",\"f5xc_site_management_standard\",\"f5xc_synthetic_monitoring_standard\",\"f5xc_waap_advanced\",\"f5xc_waap_standard\",\"f5xc_web_app_scanning_standard\"]", "x-ves-proto-message": "ves.io.schema.subscription.UnsubscribeRequest", "properties": { "f5xc_appstack_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc appstack standard.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_big_ip_irule_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_bigip_utilities_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_content_delivery_network_advanced": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc content delivery network advanced.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_content_delivery_network_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc content delivery network standard.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_delegated_access_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc delegated access standard.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_securemesh_advanced": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_securemesh_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_site_management_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_synthetic_monitoring_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc synthetic monitoring standard.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_waap_advanced": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc waap advanced.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_waap_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-description-short": "Configuration parameter for f5xc waap standard.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_web_app_scanning_standard": { "allOf": [ { "$ref": "#/components/schemas/schemaEmpty" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-description-short": "Request to unsubscribe to one of addon services.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for subscriptionUnsubscribeRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for subscriptionUnsubscribeRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "billing_and_usage" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for subscriptionUnsubscribeRequest" }, "fieldMetadata": { "f5xc_appstack_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_big_ip_irule_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_bigip_utilities_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_content_delivery_network_advanced": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_content_delivery_network_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_delegated_access_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_securemesh_advanced": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_securemesh_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_site_management_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_synthetic_monitoring_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_waap_advanced": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_waap_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "f5xc_web_app_scanning_standard": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "addon_choice": [ "f5xc_appstack_standard", "f5xc_big_ip_irule_standard", "f5xc_bigip_utilities_standard", "f5xc_content_delivery_network_advanced", "f5xc_content_delivery_network_standard", "f5xc_delegated_access_standard", "f5xc_securemesh_advanced", "f5xc_securemesh_standard", "f5xc_site_management_standard", "f5xc_synthetic_monitoring_standard", "f5xc_waap_advanced", "f5xc_waap_standard", "f5xc_web_app_scanning_standard" ] } } ] }, "address-allocators": { "name": "address-allocators", "displayName": "Address Allocators", "operations": [ { "name": "create_address_allocator", "description": "Create Address Allocator.", "method": "POST", "path": "/api/config/namespaces/{namespace}/address_allocators", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Create' RPC.", "title": "CreateRequest is used to create an instance of address_allocator", "x-displayname": "Create Request.", "x-ves-proto-message": "ves.io.schema.address_allocator.CreateRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectCreateMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/address_allocatorCreateSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for address_allocatorCreateRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for address_allocatorCreateRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "network" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for address_allocatorCreateRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Create Address Allocator will create an address allocator object in 'system' namespace of the user.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.address_allocation_scheme": { "type": "object", "description": "Decides the scheme to be used to allocate addresses from the configured address pool.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.address_allocation_scheme.allocation_unit": { "type": "integer", "description": "Prefix length indicating the size of each allocated subnet. For example, if this is\nspecified as 30, subnets of /30 will be allocated from the given address pool.", "constraints": { "constraintType": "number", "category": "discovery", "minimum": 0, "maximum": 32, "deterministic": true, "metadata": { "source": "api-probed", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.address_allocation_scheme.local_interface_address_offset": { "type": "integer", "description": "This is used to derive address for the local interface from the allocated subnet.\n\nIf Local Interface Address Type is set to \"Offset from beginning of Subnet\", this offset value is added\nto the allocated subnet and used as the local interface address. For example, if the allocated subnet is\n192.0.2.0/24 and offset is set to 2 with Local Interface Address Type set to \"Offset from beginning\nof Subnet\", local interface address of 192.0.2.204 is used.\n\nIf Local Interface Address Type is set to \"Offset from end of Subnet\", this offset value is subtracted\nfrom the end of the allocated subnet and used as the local interface address. For example, if the allocated\nsubnet is 192.0.2.0/24 and offset is set to 1 with Local Interface Address Type set to \"Offset from\nend of Subnet\", local interface address of 192.0.2.204 is used.", "constraints": { "constraintType": "number", "category": "discovery", "minimum": 0, "maximum": 32, "deterministic": true, "metadata": { "source": "api-probed", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.address_allocation_scheme.local_interface_address_type": { "type": "string", "description": "Dictates how local interface address is derived from the allocated subnet\n\nUse Nth address of the allocated subnet as the local interface address, N being the\nLocal Interface Address Offset. For example, if the allocated subnet is 192.0.2.0/24,\nLocal Interface Address Offset is set to 2 and Local Interface Address Type is set to\n\"Offset from beginning of Subnet\", local address of 192.0.2.204 is used.\n\nUse Nth last address of the allocated subnet as the local interface address, N being the\nLocal Interface Address Offset. For example, if the allocated subnet is 192.0.2.0/24,\nLocal Interface Address Offset is set to 1 and Local Interface Address Type is set to\n\"Offset from end of Subnet\", local address of 192.0.2.204 is used.\n\nThis case is used for external_connector.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "default": "LOCAL_INTERFACE_ADDRESS_OFFSET_FROM_SUBNET_BEGIN" }, "spec.address_pool": { "type": "array", "description": "Address pool from which the allocator carves out subnets or addresses to its clients.", "constraints": { "constraintType": "array", "category": "discovery", "minItems": 1, "maxItems": 32, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.mode": { "type": "string", "description": "Mode of the address allocator\n\nAddress allocator is for VERs within the local cluster or site\nAllocation is per site and then per node.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "default": "LOCAL" } }, "responseSummary": [ { "field": "metadata", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "system_metadata", "type": "object", "description": "" } ] }, { "name": "list_address_allocators", "description": "List Address Allocator.", "method": "GET", "path": "/api/config/namespaces/{namespace}/address_allocators", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "delete_address_allocator", "description": "DELETE Address Allocator.", "method": "DELETE", "path": "/api/config/namespaces/{namespace}/address_allocators/{name}", "dangerLevel": "high", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'DELETE' RPC.", "title": "DeleteRequest is used to delete a address_allocator", "x-displayname": "DELETE Request.", "x-ves-proto-message": "ves.io.schema.address_allocator.DeleteRequest", "properties": { "fail_if_referred": { "type": "boolean", "description": "Fail the DELETE operation if this object is being referred by other objects.", "title": "fail_if_referred", "format": "boolean", "x-displayname": "Fail-If-Referred.", "x-f5xc-description-short": "Fail the DELETE operation if this object is being referred by other objects.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Name of the configuration object.", "title": "name", "x-displayname": "Name", "x-ves-example": "Name", "x-f5xc-example": "name", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the configuration object is present.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-description-short": "Namespace in which the configuration object is present.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for address_allocatorDeleteRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for address_allocatorDeleteRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "network" } }, { "name": "get_address_allocator", "description": "GET Address Allocator.", "method": "GET", "path": "/api/config/namespaces/{namespace}/address_allocators/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "status": { "type": "array" } } }, "responseSummary": [ { "field": "create_form", "type": "object", "description": "" }, { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "spec", "type": "object", "description": "" }, { "field": "status", "type": "array", "description": "The status reported by different services for this configuration object." }, { "field": "system_metadata", "type": "object", "description": "" } ] } ] }, "advertise-policys": { "name": "advertise-policys", "displayName": "Advertise Policys", "operations": [ { "name": "create_advertise_policy", "description": "Create Advertise Policy.", "method": "POST", "path": "/api/config/namespaces/{namespace}/advertise_policys", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Create' RPC.", "title": "CreateRequest is used to create an instance of advertise_policy", "x-displayname": "Create Request.", "x-ves-proto-message": "ves.io.schema.advertise_policy.CreateRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectCreateMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/advertise_policyCreateSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for advertise_policyCreateRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for advertise_policyCreateRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "network" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for advertise_policyCreateRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Advertise_policy object controls how and where a service represented by a given virtual_host object is advertised to consumers.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.address": { "type": "string", "description": "Optional. VIP to advertise. This VIP can be either V4/V6 address\nYou can not specify this if where contains a site or virtual site of type REGIONAL_EDGE or public network\nIf not specified and \"where\" is specified with site or virtual site option,\ninside_vip or outside_vip specified in the site object will be used based on the network type.\nIf inside_vip/outside_vip is not configured in the site object, system use interface IP in the respected networks.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1024, "format": "ip", "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.port": { "type": "integer", "description": "Exclusive with [port_ranges]\nPort to advertise.", "constraints": { "constraintType": "number", "category": "discovery", "minimum": 1, "maximum": 65535, "multipleOf": 1, "metadata": { "source": "api-probed", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.port_ranges": { "type": "string", "description": "Exclusive with [port]\nA string containing a comma separated list of port ranges.\nEach port range consists of a single port or two ports separated by \"-\".", "constraints": { "constraintType": "string", "category": "discovery", "minLength": 1, "maxLength": 512, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.protocol": { "type": "string", "description": "Protocol to advertise.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.public_ip": { "type": "array", "description": "Optional. Public VIP to advertise\nThis field is mutually exclusive with where and address fields.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.skip_xff_append": { "type": "boolean", "description": "If set, the loadbalancer will not append the remote address to the x-forwarded-for HTTP header.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tls_parameters": { "type": "object", "description": "TLS configuration for downstream connections.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tls_parameters.client_certificate_optional": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tls_parameters.client_certificate_required": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tls_parameters.common_params": { "type": "object", "description": "Information of different aspects for TLS authentication related to ciphers,\ncertificates and trust store.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tls_parameters.no_client_certificate": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tls_parameters.xfcc_header_elements": { "type": "array", "description": "X-Forwarded-Client-Cert header elements to be set in an mTLS enabled connections.\nIf none are defined, the header will not be added.", "constraints": { "constraintType": "array", "category": "discovery", "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.where": { "type": "object", "description": "NetworkSiteRefSelector defines a union of reference to site or reference to virtual_network or reference to virtual_site\nIt is used to determine virtual network using following rules\n* Direct reference to virtual_network object\n* Site local network when referring to site object\n* All site local networks for sites selected by referring to virtual_site object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.where.site": { "type": "object", "description": "This specifies a direct reference to a site configuration object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.where.virtual_network": { "type": "object", "description": "This specifies a direct reference to a network configuration object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.where.virtual_site": { "type": "object", "description": "A reference to virtual_site object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "spec.port_choice": [ "port", "port_ranges" ], "spec.tls_parameters.client_certificate_verify_choice": [ "client_certificate_optional", "client_certificate_required", "no_client_certificate" ], "spec.where.ref_or_selector": [ "site", "virtual_network", "virtual_site" ], "spec.where.site.internet_vip_choice": [ "disable_internet_vip", "enable_internet_vip" ], "spec.where.virtual_site.internet_vip_choice": [ "disable_internet_vip", "enable_internet_vip" ] }, "responseSummary": [ { "field": "metadata", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "system_metadata", "type": "object", "description": "" } ] }, { "name": "replace_advertise_policy", "description": "Replace Advertise Policy.", "method": "PUT", "path": "/api/config/namespaces/{namespace}/advertise_policys/{name}", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Replace' RPC.", "title": "ReplaceRequest is used to replace contents of a advertise_policy", "x-displayname": "Replace Request.", "x-ves-proto-message": "ves.io.schema.advertise_policy.ReplaceRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectReplaceMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/advertise_policyReplaceSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "resource_version": { "type": "string", "x-f5xc-concurrency-token": { "server_assigned": true, "echo_on_operations": [ "replace" ] } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for advertise_policyReplaceRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for advertise_policyReplaceRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "network" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for advertise_policyReplaceRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Advertise_policy object controls how and where a service represented by a given virtual_host object is advertised to consumers.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.address": { "type": "string", "description": "Optional. VIP to advertise. This VIP can be either V4/V6 address\nYou can not specify this if where contains a site or virtual site of type REGIONAL_EDGE or public network\nIf not specified and \"where\" is specified with site or virtual site option,\ninside_vip or outside_vip specified in the site object will be used based on the network type.\nIf inside_vip/outside_vip is not configured in the site object, system use interface IP in the respected networks.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1024, "format": "ip", "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.port": { "type": "integer", "description": "Exclusive with [port_ranges]\nPort to advertise.", "constraints": { "constraintType": "number", "category": "discovery", "minimum": 1, "maximum": 65535, "multipleOf": 1, "metadata": { "source": "api-probed", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.port_ranges": { "type": "string", "description": "Exclusive with [port]\nA string containing a comma separated list of port ranges.\nEach port range consists of a single port or two ports separated by \"-\".", "constraints": { "constraintType": "string", "category": "discovery", "minLength": 1, "maxLength": 512, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.protocol": { "type": "string", "description": "Protocol to advertise.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.public_ip": { "type": "array", "description": "Optional. Public VIP to advertise\nThis field is mutually exclusive with where and address fields.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.skip_xff_append": { "type": "boolean", "description": "If set, the loadbalancer will not append the remote address to the x-forwarded-for HTTP header.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tls_parameters": { "type": "object", "description": "TLS configuration for downstream connections.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tls_parameters.client_certificate_optional": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tls_parameters.client_certificate_required": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tls_parameters.common_params": { "type": "object", "description": "Information of different aspects for TLS authentication related to ciphers,\ncertificates and trust store.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tls_parameters.no_client_certificate": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tls_parameters.xfcc_header_elements": { "type": "array", "description": "X-Forwarded-Client-Cert header elements to be set in an mTLS enabled connections.\nIf none are defined, the header will not be added.", "constraints": { "constraintType": "array", "category": "discovery", "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.where": { "type": "object", "description": "NetworkSiteRefSelector defines a union of reference to site or reference to virtual_network or reference to virtual_site\nIt is used to determine virtual network using following rules\n* Direct reference to virtual_network object\n* Site local network when referring to site object\n* All site local networks for sites selected by referring to virtual_site object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.where.site": { "type": "object", "description": "This specifies a direct reference to a site configuration object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.where.virtual_network": { "type": "object", "description": "This specifies a direct reference to a network configuration object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.where.virtual_site": { "type": "object", "description": "A reference to virtual_site object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "spec.port_choice": [ "port", "port_ranges" ], "spec.tls_parameters.client_certificate_verify_choice": [ "client_certificate_optional", "client_certificate_required", "no_client_certificate" ], "spec.where.ref_or_selector": [ "site", "virtual_network", "virtual_site" ], "spec.where.site.internet_vip_choice": [ "disable_internet_vip", "enable_internet_vip" ], "spec.where.virtual_site.internet_vip_choice": [ "disable_internet_vip", "enable_internet_vip" ] } }, { "name": "list_advertise_policys", "description": "List Advertise Policy.", "method": "GET", "path": "/api/config/namespaces/{namespace}/advertise_policys", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "delete_advertise_policy", "description": "DELETE Advertise Policy.", "method": "DELETE", "path": "/api/config/namespaces/{namespace}/advertise_policys/{name}", "dangerLevel": "high", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'DELETE' RPC.", "title": "DeleteRequest is used to delete a advertise_policy", "x-displayname": "DELETE Request.", "x-ves-proto-message": "ves.io.schema.advertise_policy.DeleteRequest", "properties": { "fail_if_referred": { "type": "boolean", "description": "Fail the DELETE operation if this object is being referred by other objects.", "title": "fail_if_referred", "format": "boolean", "x-displayname": "Fail-If-Referred.", "x-f5xc-description-short": "Fail the DELETE operation if this object is being referred by other objects.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Name of the configuration object.", "title": "name", "x-displayname": "Name", "x-ves-example": "Name", "x-f5xc-example": "name", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the configuration object is present.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-description-short": "Namespace in which the configuration object is present.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for advertise_policyDeleteRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for advertise_policyDeleteRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "network" } }, { "name": "get_advertise_policy", "description": "GET Advertise Policy.", "method": "GET", "path": "/api/config/namespaces/{namespace}/advertise_policys/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "status": { "type": "array" }, "resource_version": { "type": "string" } } }, "responseSummary": [ { "field": "create_form", "type": "object", "description": "" }, { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "replace_form", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "status", "type": "array", "description": "The status reported by different services for this configuration object." }, { "field": "system_metadata", "type": "object", "description": "" }, { "field": "resource_version", "type": "string", "description": "" } ] } ] }, "aggregation": { "name": "aggregation", "displayName": "Aggregation", "operations": [ { "name": "create_aggregation", "description": "Access Log Aggregation Query.", "method": "POST", "path": "/api/data/namespaces/{namespace}/access_logs/aggregation", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "Request to GET only aggregation data for access logs.", "title": "AccessLogAggregationRequest", "x-displayname": "Access Log Aggregation Request.", "x-ves-proto-message": "ves.io.schema.log.AccessLogAggregationRequest", "properties": { "aggs": { "type": "object", "description": "Aggregations provide summary/analytics data over the log response. If the number of logs that matched the query\nis large and cannot be returned in a single response message, user can GET helpful insights/summary using aggregations.\nThe aggregations are key'ed by user-defined aggregation name. The response will be key'ed with the same name.\nOptional.", "title": "aggregations", "x-displayname": "Aggregations.", "x-f5xc-description-short": "Aggregations provide summary/analytics data over the log response.", "x-f5xc-description-medium": "Aggregations provide summary/analytics data over the log response. If the number of logs that matched the query is large and cannot be returned in a single response message, user can GET helpful insights/summary using aggregations. The aggregations are key'ed by user-defined aggregation name.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "end_time": { "type": "string", "description": "Fetch access logs whose timestamp <= end_time\nformat: unix_timestamp|RFC 3339\n\nOptional: If not specified, then the end_time will be evaluated to start_time+10m\nIf start_time is not specified, then the end_time will be evaluated to ", "title": "end time", "x-displayname": "End Time", "x-ves-example": "2019-09-24T12:30:11.733Z.", "x-ves-validation-rules": { "ves.io.schema.rules.string.query_time": "true" }, "x-f5xc-example": "2019-09-24T12:30:11.733Z", "x-validation-rules": { "ves.io.schema.rules.string.query_time": "true" }, "x-f5xc-description-short": "Fetch access logs whose timestamp <= end_time format: unix_timestamp|RFC 3339 Optional: If not specified, then the end_time will be evaluated to...", "x-f5xc-description-medium": "Fetch access logs whose timestamp <= end_time format: unix_timestamp|RFC 3339 Optional: If not specified, then the end_time will be evaluated to start_time+10m If start_time is not specified, then the end_time will be evaluated to .", "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "GET aggregation data for a given namespace.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Value", "x-f5xc-example": "value", "x-f5xc-description-short": "GET aggregation data for a given namespace.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "query": { "type": "string", "description": "Query is used to specify the list of matchers\nsyntax for query := {[]}\n := \"\"\n := string\nOne or more of following fields in access log may be specified in the query.\nApp_type - application type\nvh_name - name of the virtual host\nsrc_site - source site\nsrc - source service\nsrc_instance - source instance\ndst_site - destination site\ndst - destination service\ndst_instance - destination instance\nmethod - request method\nreq_path - request path\nrsp_code - response code\nbrowser_type - browser type\ncity - name of the city\ncountry - country code\ndevice_type - device type\n := string\n := [\"=\"|\"!=\"]\n= : equal to\n!= : not equal to\nWhen more than one matcher is specified in the query, then access logs matching ALL the matchers will be considered for aggregation.\nExample: query={src=\"service1\", dst=\"service2\"} will consider all access logs with source service \"service1\" and the destination service \"service2\"\n\nOptional: If not specified, all the access logs matching the given tenant, namespace will be considered for aggregation.", "title": "query", "x-displayname": "Query", "x-ves-example": "{vh_name=\\\"productpage\\\"}", "x-f5xc-example": "\"{vh_name=\\\"productpage\\\"}\"", "x-f5xc-description-short": "Query is used to specify the list of matchers syntax for query := {[]} := \"\" :=...", "x-f5xc-description-medium": "Query is used to specify the list of matchers syntax for query := {[]} := \"\" := string One or more of following fields in access log may be specified in the query. App_type - application type vh_name - name of the virtual host src_site...", "x-f5xc-constraints": { "constraintType": "string", "category": "content", "maxLength": 1024, "minLength": 0, "metadata": { "source": "inferred", "confidence": 0.75, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "start_time": { "type": "string", "description": "Fetch access logs whose timestamp >= start_time\nformat: unix_timestamp|RFC 3339\n\nOptional: If not specified, then the start_time will be evaluated to end_time-10m\nIf end_time is not specified, then the start_time will be evaluated to -10m.", "title": "start time", "x-displayname": "Start Time.", "x-ves-example": "2019-09-23T12:30:11.733Z.", "x-ves-validation-rules": { "ves.io.schema.rules.string.query_time": "true" }, "x-f5xc-example": "2019-09-23T12:30:11.733Z", "x-validation-rules": { "ves.io.schema.rules.string.query_time": "true" }, "x-f5xc-description-short": "Fetch access logs whose timestamp >= start_time format: unix_timestamp|RFC 3339 Optional: If not specified, then the start_time will be evaluated...", "x-f5xc-description-medium": "Fetch access logs whose timestamp >= start_time format: unix_timestamp|RFC 3339 Optional: If not specified, then the start_time will be evaluated to end_time-10m If end_time is not specified, then the start_time will be evaluated to -10m.", "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-description-short": "Request to GET only aggregation data for access logs.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for logAccessLogAggregationRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for logAccessLogAggregationRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "statistics" }, "responseSchema": { "type": "object", "properties": { "aggs": { "type": "object" }, "total_hits": { "type": "string" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for logAccessLogAggregationRequest" }, "fieldMetadata": { "aggs": { "type": "object", "description": "Aggregations provide summary/analytics data over the log response. If the number of logs that matched the query\nis large and cannot be returned in a single response message, user can GET helpful insights/summary using aggregations.\nThe aggregations are key'ed by user-defined aggregation name. The response will be key'ed with the same name.\nOptional.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "end_time": { "type": "string", "description": "Fetch access logs whose timestamp <= end_time\nformat: unix_timestamp|RFC 3339\n\nOptional: If not specified, then the end_time will be evaluated to start_time+10m\nIf start_time is not specified, then the end_time will be evaluated to ", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "GET aggregation data for a given namespace.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "query": { "type": "string", "description": "Query is used to specify the list of matchers\nsyntax for query := {[]}\n := \"\"\n := string\nOne or more of following fields in access log may be specified in the query.\nApp_type - application type\nvh_name - name of the virtual host\nsrc_site - source site\nsrc - source service\nsrc_instance - source instance\ndst_site - destination site\ndst - destination service\ndst_instance - destination instance\nmethod - request method\nreq_path - request path\nrsp_code - response code\nbrowser_type - browser type\ncity - name of the city\ncountry - country code\ndevice_type - device type\n := string\n := [\"=\"|\"!=\"]\n= : equal to\n!= : not equal to\nWhen more than one matcher is specified in the query, then access logs matching ALL the matchers will be considered for aggregation.\nExample: query={src=\"service1\", dst=\"service2\"} will consider all access logs with source service \"service1\" and the destination service \"service2\"\n\nOptional: If not specified, all the access logs matching the given tenant, namespace will be considered for aggregation.", "constraints": { "constraintType": "string", "category": "content", "maxLength": 1024, "minLength": 0, "metadata": { "source": "inferred", "confidence": 0.75, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "start_time": { "type": "string", "description": "Fetch access logs whose timestamp >= start_time\nformat: unix_timestamp|RFC 3339\n\nOptional: If not specified, then the start_time will be evaluated to end_time-10m\nIf end_time is not specified, then the start_time will be evaluated to -10m.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "aggs", "type": "object", "description": "Aggregations provide summary/analytics data over the log response. If the number of logs that matched the query\nis large and cannot be returned in a single response message, user can GET helpful insights/summary using aggregations.\nThe aggregation data is key'ed with the aggregation name specified in the request." }, { "field": "total_hits", "type": "string", "description": "Total number of log messages that matched the query." } ] } ] }, "ai-data-bfdp-bfdp-enable-feature": { "name": "ai-data-bfdp-bfdp-enable-feature", "displayName": "Ai Data Bfdp Bfdp Enable Feature", "operations": [ { "name": "create_ai_data_bfdp_bfdp_enable_feature", "description": "Enable feature.", "method": "POST", "path": "/api/ai_data/bfdp/namespaces/system/bfdp/enable_feature", "dangerLevel": "medium", "parameters": [], "bodySchema": { "type": "object", "description": "Any payload to be passed on the GET Provision API.", "title": "EnableFeatureRequest", "x-displayname": "EnableFeature Request.", "x-ves-proto-message": "ves.io.schema.ai_data.bfdp.EnableFeatureRequest", "x-f5xc-description-short": "Any payload to be passed on the GET Provision API.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for bfdpEnableFeatureRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for bfdpEnableFeatureRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "other" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for bfdpEnableFeatureRequest" } } ] }, "ai-data-bfdp-bfdp-gettoken": { "name": "ai-data-bfdp-bfdp-gettoken", "displayName": "Ai Data Bfdp Bfdp Gettoken", "operations": [ { "name": "create_ai_data_bfdp_bfdp_gettoken", "description": "Subscribe to BFDP pipeline.", "method": "POST", "path": "/api/ai_data/bfdp/namespaces/system/bfdp/gettoken", "dangerLevel": "medium", "parameters": [], "bodySchema": { "type": "object", "description": "Request to subscribe to BFDP CMS.", "title": "TokenRequest", "x-displayname": "Token Request.", "x-ves-proto-message": "ves.io.schema.ai_data.bfdp.subscription.TokenRequest", "properties": { "product_name": { "type": "string", "description": "F5 product's pipeline object name .", "title": "product_name", "x-displayname": "Product_name.", "x-ves-example": "Product name.", "x-f5xc-example": "product name", "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for subscriptionTokenRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for subscriptionTokenRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "users" }, "responseSchema": { "type": "object", "properties": { "token": { "type": "string" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for subscriptionTokenRequest" }, "fieldMetadata": { "product_name": { "type": "string", "description": "F5 product's pipeline object name .", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "token", "type": "string", "description": "F5 product's pipeline object name ." } ] } ] }, "ai-data-bfdp-bfdp-refresh-token": { "name": "ai-data-bfdp-bfdp-refresh-token", "displayName": "Ai Data Bfdp Bfdp Refresh Token", "operations": [ { "name": "create_ai_data_bfdp_bfdp_refresh_token", "description": "Refresh Token.", "method": "POST", "path": "/api/ai_data/bfdp/namespaces/system/bfdp/refresh_token", "dangerLevel": "medium", "parameters": [], "bodySchema": { "type": "object", "description": "API to refresh token for a given pipeline.", "title": "RefreshTokenRequest", "x-displayname": "Refresh Token Request.", "x-ves-proto-message": "ves.io.schema.ai_data.bfdp.RefreshTokenRequest", "properties": { "product_name": { "type": "string", "description": "Product_name is a pipeline name for which token to be generated.", "title": "product_name", "x-displayname": "Product_name.", "x-ves-example": "Product_name.", "x-f5xc-example": "product_name", "x-f5xc-description-short": "Product_name is a pipeline name for which token to be generated.", "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-description-short": "API to refresh token for a given pipeline.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for bfdpRefreshTokenRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for bfdpRefreshTokenRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "users" }, "responseSchema": { "type": "object", "properties": { "result": { "type": "string" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for bfdpRefreshTokenRequest" }, "fieldMetadata": { "product_name": { "type": "string", "description": "Product_name is a pipeline name for which token to be generated.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "result", "type": "string", "description": "Result will be in JSON format having token in it." } ] } ] }, "ai-data-bfdp-bfdp-subscribe": { "name": "ai-data-bfdp-bfdp-subscribe", "displayName": "Ai Data Bfdp Bfdp Subscribe", "operations": [ { "name": "create_ai_data_bfdp_bfdp_subscribe", "description": "Subscribe to BFDP pipeline.", "method": "POST", "path": "/api/ai_data/bfdp/namespaces/system/bfdp/subscribe", "dangerLevel": "medium", "parameters": [], "bodySchema": { "type": "object", "description": "Request to subscribe to BFDP CMS.", "title": "SubscribeRequest", "x-displayname": "Subscribe Request.", "x-ves-proto-message": "ves.io.schema.ai_data.bfdp.subscription.SubscribeRequest", "properties": { "product_name": { "type": "string", "description": "F5 product's pipeline object name .", "title": "product_name", "x-displayname": "Product_name.", "x-ves-example": "Product name.", "x-f5xc-example": "product name", "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for subscriptionSubscribeRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for subscriptionSubscribeRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "billing_and_usage" }, "responseSchema": { "type": "object", "properties": { "configured_tenant_id": { "type": "string" }, "pipeline_id": { "type": "string" }, "pipeline_name": { "type": "string" }, "token": { "type": "string" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for subscriptionSubscribeRequest" }, "fieldMetadata": { "product_name": { "type": "string", "description": "F5 product's pipeline object name .", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "configured_tenant_id", "type": "string", "description": "F5 product's pipeline configured tenant ." }, { "field": "pipeline_id", "type": "string", "description": "F5 product's pipeline ID for which this tenant is configured." }, { "field": "pipeline_name", "type": "string", "description": "F5 product's pipeline name for which this tenant is configured." }, { "field": "token", "type": "string", "description": "F5 product's pipeline token to ingest data ." } ] } ] }, "ai-data-bfdp-bfdp-unsubscribe": { "name": "ai-data-bfdp-bfdp-unsubscribe", "displayName": "Ai Data Bfdp Bfdp Unsubscribe", "operations": [ { "name": "create_ai_data_bfdp_bfdp_unsubscribe", "description": "Unsubscribe to BFDP pipeline.", "method": "POST", "path": "/api/ai_data/bfdp/namespaces/system/bfdp/unsubscribe", "dangerLevel": "medium", "parameters": [], "bodySchema": { "type": "object", "description": "Request to unsubscribe to BFDP CMS.", "title": "UnsubscribeRequest", "x-displayname": "Unsubscribe Request.", "x-ves-proto-message": "ves.io.schema.ai_data.bfdp.subscription.UnsubscribeRequest", "properties": { "product_name": { "type": "string", "description": "F5 product's pipeline object name .", "title": "product_name", "x-displayname": "Product_name.", "x-ves-example": "Product name.", "x-f5xc-example": "product name", "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for subscriptionUnsubscribeRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for subscriptionUnsubscribeRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "billing_and_usage" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for subscriptionUnsubscribeRequest" }, "fieldMetadata": { "product_name": { "type": "string", "description": "F5 product's pipeline object name .", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } } } ] }, "alert-confirm": { "name": "alert-confirm", "displayName": "Alert Confirm", "operations": [ { "name": "create_alert_confirm", "description": "Confirm Alert Receiver.", "method": "POST", "path": "/api/alert/namespaces/{namespace}/alert_receivers/{name}/confirm", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "Request to confirm the Alert Receiver.", "title": "Confirm Alert Receiver Request", "x-displayname": "Confirm Alert Receiver Request.", "x-ves-proto-message": "ves.io.schema.alert_receiver.ConfirmAlertReceiverRequest", "properties": { "name": { "type": "string", "description": "Name of the alert receiver.", "title": "Name", "x-displayname": "Name", "x-ves-example": "Email1", "x-f5xc-example": "email1", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the alert receiver is configured.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-example": "ns1", "x-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-description-short": "Namespace in which the alert receiver is configured.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "verification_code": { "type": "string", "description": "Verification Code received by the user.", "title": "Verification Code", "x-displayname": "Verification Code.", "x-ves-example": "123456", "x-ves-validation-rules": { "ves.io.schema.rules.string.len_bytes": "6" }, "x-f5xc-example": "123456", "x-validation-rules": { "ves.io.schema.rules.string.len_bytes": "6" }, "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for alert_receiverConfirmAlertReceiverRequest", "required_fields": [ "namespace" ], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for alert_receiverConfirmAlertReceiverRequest\nmetadata:\n name: example\n namespace: default\nspec:\n namespace: value", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {\n \"namespace\": \"value\"\n }\n}" }, "x-f5xc-cli-domain": "alert" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": { "namespace": "value" } }, "requiredFields": [ "namespace" ], "description": "Minimum configuration for alert_receiverConfirmAlertReceiverRequest" }, "fieldMetadata": { "name": { "type": "string", "description": "Name of the alert receiver.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Namespace in which the alert receiver is configured.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "verification_code": { "type": "string", "description": "Verification Code received by the user.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } } } ] }, "alert-match": { "name": "alert-match", "displayName": "Alert Match", "operations": [ { "name": "create_alert_match", "description": "GET Alert Policy Match.", "method": "POST", "path": "/api/alert/namespaces/{namespace}/alert_policy/match", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "Request message for GetAlertPolicyMatch RPC,\ndescribing alert to match against alert policies.", "title": "Alert Policy Match Request", "x-displayname": "Alert Policy Match Request.", "x-ves-proto-message": "ves.io.schema.alert_policy.AlertPolicyMatchRequest", "properties": { "labels": { "type": "object", "description": "\"namespace\": \"system\",\n\"tenant\" :\"example-tenant\",\n\"alertname\": \"podXcrash\",\n\"group\": \"IaaS\",\n\"severity\": \"critical\"\n},\nAlert labels to find match against alert policies\nrequires tenant and namespace to be defined labels map.", "title": "labels", "x-displayname": "Labels", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.map.max_pairs": "50", "ves.io.schema.rules.message.required": "true" }, "x-f5xc-example": "\"labels\"{", "x-validation-rules": { "ves.io.schema.rules.map.max_pairs": "50", "ves.io.schema.rules.message.required": "true" }, "x-f5xc-description-short": "\"namespace\": \"system\", \"tenant\" :\"example-tenant\", \"alertname\": \"podXcrash\", \"group\": \"IaaS\", \"severity\": \"critical\" }, Alert labels to find match...", "x-f5xc-description-medium": "\"namespace\": \"system\", \"tenant\" :\"example-tenant\", \"alertname\": \"podXcrash\", \"group\": \"IaaS\", \"severity\": \"critical\" }, Alert labels to find match against alert policies requires tenant and namespace to be defined labels map.", "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "namespace": { "type": "string", "description": "The namespace in which the configuration object is present.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-example": "ns1", "x-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-description-short": "The namespace in which the configuration object is present.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-description-short": "Request message for GetAlertPolicyMatch RPC, describing alert to match against alert policies.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for alert_policyAlertPolicyMatchRequest", "required_fields": [ "labels", "namespace" ], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for alert_policyAlertPolicyMatchRequest\nmetadata:\n name: example\n namespace: default\nspec:\n labels: value\n namespace: value", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {\n \"labels\": \"value\",\n \"namespace\": \"value\"\n }\n}" }, "x-f5xc-cli-domain": "statistics" }, "responseSchema": { "type": "object", "properties": { "alert_match": { "type": "array" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": { "labels": "value", "namespace": "value" } }, "requiredFields": [ "labels", "namespace" ], "description": "Minimum configuration for alert_policyAlertPolicyMatchRequest" }, "fieldMetadata": { "labels": { "type": "object", "description": "\"namespace\": \"system\",\n\"tenant\" :\"example-tenant\",\n\"alertname\": \"podXcrash\",\n\"group\": \"IaaS\",\n\"severity\": \"critical\"\n},\nAlert labels to find match against alert policies\nrequires tenant and namespace to be defined labels map.", "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "namespace": { "type": "string", "description": "The namespace in which the configuration object is present.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } } }, "responseSummary": [ { "field": "alert_match", "type": "array", "description": "X-example:{\"alert_match\":[{\"policy_name\":\"policy1\",\"policy_active\":1},{\"policy_name\":\"policy4\"}]}\nList of Alert Policies that match given requested namespace,labels." } ] } ] }, "alert-policys": { "name": "alert-policys", "displayName": "Alert Policys", "operations": [ { "name": "create_alert_policy", "description": "Create Alert Policy.", "method": "POST", "path": "/api/config/namespaces/{namespace}/alert_policys", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Create' RPC.", "title": "CreateRequest is used to create an instance of alert_policy", "x-displayname": "Create Request.", "x-ves-proto-message": "ves.io.schema.alert_policy.CreateRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectCreateMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/alert_policyCreateSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for alert_policyCreateRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for alert_policyCreateRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "statistics" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for alert_policyCreateRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Creates a new Alert Policy Object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters": { "type": "object", "description": "Set of notification parameters to decide how and when the alert notifications should be sent to the receivers.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.custom": { "type": "object", "description": "Specify list of custom labels to group/aggregate the alerts.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.default": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.group_interval": { "type": "string", "description": "Group Interval is used to specify how long to wait before sending a notification about new alerts\nthat are added to the group for which an initial notification has already been sent.\nFormat: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days\nIf not specified, group_interval defaults to \"1m\"", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.group_wait": { "type": "string", "description": "Time value used to specify how long to initially wait for an inhibiting alert to arrive or\ncollect more alerts for the same group.\nFormat: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days\nIf not specified, group_wait defaults to \"30s\"", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.individual": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.repeat_interval": { "type": "string", "description": "Repeat Interval is used to specify how long to wait before sending a notification again if it\nhas already been sent successfully.\nFormat: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days\nIf not specified, group_interval defaults to \"4h\"", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.ves_io_group": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.receivers": { "type": "array", "description": "List of Alert Receivers where the alerts will be sent.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 4, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.routes": { "type": "array", "description": "Set of routes to match the incoming alert.\nThe routes are evaluated in the specified order and terminates on the first match.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 16, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } } }, "oneOfVariants": { "spec.notification_parameters.group_by": [ "custom", "default", "individual", "ves_io_group" ] }, "responseSummary": [ { "field": "metadata", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "system_metadata", "type": "object", "description": "" } ] }, { "name": "replace_alert_policy", "description": "Replace Alert Policy.", "method": "PUT", "path": "/api/config/namespaces/{namespace}/alert_policys/{name}", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Replace' RPC.", "title": "ReplaceRequest is used to replace contents of a alert_policy", "x-displayname": "Replace Request.", "x-ves-proto-message": "ves.io.schema.alert_policy.ReplaceRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectReplaceMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/alert_policyReplaceSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "resource_version": { "type": "string", "x-f5xc-concurrency-token": { "server_assigned": true, "echo_on_operations": [ "replace" ] } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for alert_policyReplaceRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for alert_policyReplaceRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "statistics" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for alert_policyReplaceRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Replaces the content of the Alert Policy Object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters": { "type": "object", "description": "Set of notification parameters to decide how and when the alert notifications should be sent to the receivers.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.custom": { "type": "object", "description": "Specify list of custom labels to group/aggregate the alerts.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.default": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.group_interval": { "type": "string", "description": "Group Interval is used to specify how long to wait before sending a notification about new alerts\nthat are added to the group for which an initial notification has already been sent.\nFormat: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days\nIf not specified, group_interval defaults to \"1m\"", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.group_wait": { "type": "string", "description": "Time value used to specify how long to initially wait for an inhibiting alert to arrive or\ncollect more alerts for the same group.\nFormat: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days\nIf not specified, group_wait defaults to \"30s\"", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.individual": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.repeat_interval": { "type": "string", "description": "Repeat Interval is used to specify how long to wait before sending a notification again if it\nhas already been sent successfully.\nFormat: [0-9][smhd], where s - seconds, m - minutes, h - hours, d - days\nIf not specified, group_interval defaults to \"4h\"", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.notification_parameters.ves_io_group": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.receivers": { "type": "array", "description": "List of Alert Receivers where the alerts will be sent.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 4, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.routes": { "type": "array", "description": "Set of routes to match the incoming alert.\nThe routes are evaluated in the specified order and terminates on the first match.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 16, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } } }, "oneOfVariants": { "spec.notification_parameters.group_by": [ "custom", "default", "individual", "ves_io_group" ] } }, { "name": "list_alert_policys", "description": "List Alert Policy.", "method": "GET", "path": "/api/config/namespaces/{namespace}/alert_policys", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "delete_alert_policy", "description": "DELETE Alert Policy.", "method": "DELETE", "path": "/api/config/namespaces/{namespace}/alert_policys/{name}", "dangerLevel": "high", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'DELETE' RPC.", "title": "DeleteRequest is used to delete a alert_policy", "x-displayname": "DELETE Request.", "x-ves-proto-message": "ves.io.schema.alert_policy.DeleteRequest", "properties": { "fail_if_referred": { "type": "boolean", "description": "Fail the DELETE operation if this object is being referred by other objects.", "title": "fail_if_referred", "format": "boolean", "x-displayname": "Fail-If-Referred.", "x-f5xc-description-short": "Fail the DELETE operation if this object is being referred by other objects.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Name of the configuration object.", "title": "name", "x-displayname": "Name", "x-ves-example": "Name", "x-f5xc-example": "name", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the configuration object is present.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-description-short": "Namespace in which the configuration object is present.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for alert_policyDeleteRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for alert_policyDeleteRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "statistics" } }, { "name": "get_alert_policy", "description": "GET Alert Policy.", "method": "GET", "path": "/api/config/namespaces/{namespace}/alert_policys/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "status": { "type": "array" }, "resource_version": { "type": "string" } } }, "responseSummary": [ { "field": "create_form", "type": "object", "description": "" }, { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "replace_form", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "status", "type": "array", "description": "The status reported by different services for this configuration object." }, { "field": "system_metadata", "type": "object", "description": "" }, { "field": "resource_version", "type": "string", "description": "" } ] } ] }, "alert-receivers": { "name": "alert-receivers", "displayName": "Alert Receivers", "operations": [ { "name": "create_alert_receiver", "description": "Create Alert Receiver.", "method": "POST", "path": "/api/config/namespaces/{namespace}/alert_receivers", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Create' RPC.", "title": "CreateRequest is used to create an instance of alert_receiver", "x-displayname": "Create Request.", "x-ves-proto-message": "ves.io.schema.alert_receiver.CreateRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectCreateMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/alert_receiverCreateSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Alert receiver for F5 XC alert notifications", "required_fields": [ "metadata.name", "metadata.namespace" ], "mutually_exclusive_groups": [ { "name": "receiver", "fields": [ "spec.email", "spec.opsgenie", "spec.pagerduty", "spec.slack", "spec.sms", "spec.webhook" ], "required": true, "reason": "Choose exactly one notification channel" } ], "example_yaml": "metadata:\n name: example-alert-receiver\n namespace: system\nspec:\n email:\n email_address: alerts@example.com\n", "example_json": "{\n \"metadata\": {\"name\": \"example-alert-receiver\", \"namespace\": \"system\"},\n \"spec\": {\n \"email\": {\"email_address\": \"alerts@example.com\"}\n }\n}\n" }, "x-f5xc-cli-domain": "alert" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example-alert-receiver", "namespace": "system" }, "spec": { "email": { "email_address": "alerts@example.com" } } }, "requiredFields": [ "metadata.name", "metadata.namespace" ], "description": "Alert receiver for F5 XC alert notifications" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Creates a new Alert Receiver object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.email": { "type": "object", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.email.email": { "type": "string", "description": "Email ID of the user.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1024, "pattern": "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$", "format": "email", "minLength": 3, "formatDescription": "RFC 5322 email address, max 254 characters", "validation": { "rfc": "RFC 5322" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.opsgenie": { "type": "object", "description": "OpsGenie configuration to send alert notifications.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.opsgenie.api_key": { "type": "object", "description": "SecretType is used in an object to indicate a sensitive/confidential field.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.opsgenie.url": { "type": "string", "description": "URL to send API requests to.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1024, "format": "uri", "minLength": 1, "pattern": "^(https?|ftp)://[^\\s/$.?#].[^\\s]*$", "formatDescription": "RFC 3986 URI with scheme (http, https, ftp)", "validation": { "rfc": "RFC 3986" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.pagerduty": { "type": "object", "description": "PagerDuty configuration to send alert notifications.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.pagerduty.routing_key": { "type": "object", "description": "SecretType is used in an object to indicate a sensitive/confidential field.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.pagerduty.url": { "type": "string", "description": "URL to send API requests to.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1024, "format": "uri", "minLength": 1, "pattern": "^(https?|ftp)://[^\\s/$.?#].[^\\s]*$", "formatDescription": "RFC 3986 URI with scheme (http, https, ftp)", "validation": { "rfc": "RFC 3986" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.slack": { "type": "object", "description": "Slack configuration to send alert notifications.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.slack.channel": { "type": "string", "description": "Channel or user to send notifications to.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1024, "pattern": "^[a-z0-9-_]{1,80}$", "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.slack.url": { "type": "object", "description": "SecretType is used in an object to indicate a sensitive/confidential field.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.sms": { "type": "object", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.sms.contact_number": { "type": "string", "description": "Contact number of the user in ITU E.164 format [+][country code][subscriber number including area code]", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.webhook": { "type": "object", "description": "Webhook configuration to send alert notifications.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.webhook.http_config": { "type": "object", "description": "Configuration for HTTP endpoint.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.webhook.url": { "type": "object", "description": "SecretType is used in an object to indicate a sensitive/confidential field.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "spec.receiver": [ "email", "opsgenie", "pagerduty", "slack", "sms", "webhook" ], "spec.opsgenie.api_key.secret_info_oneof": [ "blindfold_secret_info", "clear_secret_info" ], "spec.pagerduty.routing_key.secret_info_oneof": [ "blindfold_secret_info", "clear_secret_info" ], "spec.slack.url.secret_info_oneof": [ "blindfold_secret_info", "clear_secret_info" ], "spec.webhook.http_config.auth_choice": [ "auth_token", "basic_auth", "client_cert_obj", "no_authorization" ], "spec.webhook.http_config.tls_choice": [ "no_tls", "use_tls" ], "spec.webhook.url.secret_info_oneof": [ "blindfold_secret_info", "clear_secret_info" ] }, "responseSummary": [ { "field": "metadata", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "system_metadata", "type": "object", "description": "" } ] }, { "name": "replace_alert_receiver", "description": "Replace Alert Receiver.", "method": "PUT", "path": "/api/config/namespaces/{namespace}/alert_receivers/{name}", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Replace' RPC.", "title": "ReplaceRequest is used to replace contents of a alert_receiver", "x-displayname": "Replace Request.", "x-ves-proto-message": "ves.io.schema.alert_receiver.ReplaceRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectReplaceMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/alert_receiverReplaceSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "resource_version": { "type": "string", "x-f5xc-concurrency-token": { "server_assigned": true, "echo_on_operations": [ "replace" ] } } }, "x-f5xc-minimum-configuration": { "description": "Alert receiver for F5 XC alert notifications", "required_fields": [ "metadata.name", "metadata.namespace" ], "mutually_exclusive_groups": [ { "name": "receiver", "fields": [ "spec.email", "spec.opsgenie", "spec.pagerduty", "spec.slack", "spec.sms", "spec.webhook" ], "required": true, "reason": "Choose exactly one notification channel" } ], "example_yaml": "metadata:\n name: example-alert-receiver\n namespace: system\nspec:\n email:\n email_address: alerts@example.com\n", "example_json": "{\n \"metadata\": {\"name\": \"example-alert-receiver\", \"namespace\": \"system\"},\n \"spec\": {\n \"email\": {\"email_address\": \"alerts@example.com\"}\n }\n}\n" }, "x-f5xc-cli-domain": "alert" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example-alert-receiver", "namespace": "system" }, "spec": { "email": { "email_address": "alerts@example.com" } } }, "requiredFields": [ "metadata.name", "metadata.namespace" ], "description": "Alert receiver for F5 XC alert notifications" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Replaces the content of an Alert Receiver object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.email": { "type": "object", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.email.email": { "type": "string", "description": "Email ID of the user.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1024, "pattern": "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$", "format": "email", "minLength": 3, "formatDescription": "RFC 5322 email address, max 254 characters", "validation": { "rfc": "RFC 5322" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.opsgenie": { "type": "object", "description": "OpsGenie configuration to send alert notifications.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.opsgenie.api_key": { "type": "object", "description": "SecretType is used in an object to indicate a sensitive/confidential field.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.opsgenie.url": { "type": "string", "description": "URL to send API requests to.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1024, "format": "uri", "minLength": 1, "pattern": "^(https?|ftp)://[^\\s/$.?#].[^\\s]*$", "formatDescription": "RFC 3986 URI with scheme (http, https, ftp)", "validation": { "rfc": "RFC 3986" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.pagerduty": { "type": "object", "description": "PagerDuty configuration to send alert notifications.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.pagerduty.routing_key": { "type": "object", "description": "SecretType is used in an object to indicate a sensitive/confidential field.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.pagerduty.url": { "type": "string", "description": "URL to send API requests to.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1024, "format": "uri", "minLength": 1, "pattern": "^(https?|ftp)://[^\\s/$.?#].[^\\s]*$", "formatDescription": "RFC 3986 URI with scheme (http, https, ftp)", "validation": { "rfc": "RFC 3986" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.slack": { "type": "object", "description": "Slack configuration to send alert notifications.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.slack.channel": { "type": "string", "description": "Channel or user to send notifications to.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1024, "pattern": "^[a-z0-9-_]{1,80}$", "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.slack.url": { "type": "object", "description": "SecretType is used in an object to indicate a sensitive/confidential field.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.sms": { "type": "object", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.sms.contact_number": { "type": "string", "description": "Contact number of the user in ITU E.164 format [+][country code][subscriber number including area code]", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.webhook": { "type": "object", "description": "Webhook configuration to send alert notifications.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.webhook.http_config": { "type": "object", "description": "Configuration for HTTP endpoint.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.webhook.url": { "type": "object", "description": "SecretType is used in an object to indicate a sensitive/confidential field.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "spec.receiver": [ "email", "opsgenie", "pagerduty", "slack", "sms", "webhook" ], "spec.opsgenie.api_key.secret_info_oneof": [ "blindfold_secret_info", "clear_secret_info" ], "spec.pagerduty.routing_key.secret_info_oneof": [ "blindfold_secret_info", "clear_secret_info" ], "spec.slack.url.secret_info_oneof": [ "blindfold_secret_info", "clear_secret_info" ], "spec.webhook.http_config.auth_choice": [ "auth_token", "basic_auth", "client_cert_obj", "no_authorization" ], "spec.webhook.http_config.tls_choice": [ "no_tls", "use_tls" ], "spec.webhook.url.secret_info_oneof": [ "blindfold_secret_info", "clear_secret_info" ] } }, { "name": "list_alert_receivers", "description": "List Alert Receiver.", "method": "GET", "path": "/api/config/namespaces/{namespace}/alert_receivers", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "delete_alert_receiver", "description": "DELETE Alert Receiver.", "method": "DELETE", "path": "/api/config/namespaces/{namespace}/alert_receivers/{name}", "dangerLevel": "high", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'DELETE' RPC.", "title": "DeleteRequest is used to delete a alert_receiver", "x-displayname": "DELETE Request.", "x-ves-proto-message": "ves.io.schema.alert_receiver.DeleteRequest", "properties": { "fail_if_referred": { "type": "boolean", "description": "Fail the DELETE operation if this object is being referred by other objects.", "title": "fail_if_referred", "format": "boolean", "x-displayname": "Fail-If-Referred.", "x-f5xc-description-short": "Fail the DELETE operation if this object is being referred by other objects.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Name of the configuration object.", "title": "name", "x-displayname": "Name", "x-ves-example": "Name", "x-f5xc-example": "name", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the configuration object is present.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-description-short": "Namespace in which the configuration object is present.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for alert_receiverDeleteRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for alert_receiverDeleteRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "alert" } }, { "name": "get_alert_receiver", "description": "GET Alert Receiver.", "method": "GET", "path": "/api/config/namespaces/{namespace}/alert_receivers/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "status": { "type": "array" }, "resource_version": { "type": "string" } } }, "responseSummary": [ { "field": "create_form", "type": "object", "description": "" }, { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "replace_form", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "status", "type": "array", "description": "The status reported by different services for this configuration object." }, { "field": "system_metadata", "type": "object", "description": "" }, { "field": "resource_version", "type": "string", "description": "" } ] } ] }, "alert-test": { "name": "alert-test", "displayName": "Alert Test", "operations": [ { "name": "create_alert_test", "description": "Test Alert Receiver.", "method": "POST", "path": "/api/alert/namespaces/{namespace}/alert_receivers/{name}/test", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "Request to send test alert.", "title": "Test Alert Receiver Request", "x-displayname": "Test Alert Receiver Request.", "x-ves-proto-message": "ves.io.schema.alert_receiver.TestAlertReceiverRequest", "properties": { "name": { "type": "string", "description": "Name of the alert receiver.", "title": "Name", "x-displayname": "Name", "x-ves-example": "Slack1", "x-f5xc-example": "slack1", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the alert receiver is configured.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-example": "ns1", "x-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-description-short": "Namespace in which the alert receiver is configured.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for alert_receiverTestAlertReceiverRequest", "required_fields": [ "namespace" ], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for alert_receiverTestAlertReceiverRequest\nmetadata:\n name: example\n namespace: default\nspec:\n namespace: value", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {\n \"namespace\": \"value\"\n }\n}" }, "x-f5xc-cli-domain": "alert" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": { "namespace": "value" } }, "requiredFields": [ "namespace" ], "description": "Minimum configuration for alert_receiverTestAlertReceiverRequest" }, "fieldMetadata": { "name": { "type": "string", "description": "Name of the alert receiver.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Namespace in which the alert receiver is configured.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } } } } ] }, "alert-verify": { "name": "alert-verify", "displayName": "Alert Verify", "operations": [ { "name": "create_alert_verify", "description": "Verify Alert Receiver.", "method": "POST", "path": "/api/alert/namespaces/{namespace}/alert_receivers/{name}/verify", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "Send request to verify Alert Receiver.", "title": "Verify Alert Receiver Request", "x-displayname": "Verify Alert Receiver Request.", "x-ves-proto-message": "ves.io.schema.alert_receiver.VerifyAlertReceiverRequest", "properties": { "name": { "type": "string", "description": "Name of the alert receiver.", "title": "Name", "x-displayname": "Name", "x-ves-example": "Email1", "x-f5xc-example": "email1", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the alert receiver is configured.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-example": "ns1", "x-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-description-short": "Namespace in which the alert receiver is configured.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for alert_receiverVerifyAlertReceiverRequest", "required_fields": [ "namespace" ], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for alert_receiverVerifyAlertReceiverRequest\nmetadata:\n name: example\n namespace: default\nspec:\n namespace: value", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {\n \"namespace\": \"value\"\n }\n}" }, "x-f5xc-cli-domain": "alert" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": { "namespace": "value" } }, "requiredFields": [ "namespace" ], "description": "Minimum configuration for alert_receiverVerifyAlertReceiverRequest" }, "fieldMetadata": { "name": { "type": "string", "description": "Name of the alert receiver.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Namespace in which the alert receiver is configured.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } } } } ] }, "alerts": { "name": "alerts", "displayName": "Alerts", "operations": [ { "name": "list_alerts", "description": "GET Alerts.", "method": "GET", "path": "/api/data/namespaces/{namespace}/alerts", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "inactive", "in": "query", "required": false, "type": "boolean" }, { "name": "silenced", "in": "query", "required": false, "type": "boolean" }, { "name": "inhibited", "in": "query", "required": false, "type": "boolean" }, { "name": "unprocessed", "in": "query", "required": false, "type": "boolean" }, { "name": "filter", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "data": { "type": "string" } } }, "responseSummary": [ { "field": "data", "type": "string", "description": "Data contains the list of alerts." } ] } ] }, "all-application-inventory": { "name": "all-application-inventory", "displayName": "All Application Inventory", "operations": [ { "name": "create_all_application_inventory", "description": "All Application Objects Inventory.", "method": "POST", "path": "/api/config/namespaces/system/all_application_inventory", "dangerLevel": "medium", "parameters": [], "bodySchema": { "type": "object", "description": "Request for inventory of application related objects.", "title": "AllApplicationInventoryRequest", "x-displayname": "All Application related objects inventory request.", "x-ves-proto-message": "ves.io.schema.namespace.AllApplicationInventoryRequest", "properties": { "bigip_virtual_server_filter": { "allOf": [ { "$ref": "#/components/schemas/namespaceBIGIPVirtualServerInventoryFilterType" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter": { "allOf": [ { "$ref": "#/components/schemas/namespaceHTTPLoadbalancerInventoryFilterType" } ], "x-f5xc-description-short": "Configuration parameter for cdn load balancer filter.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter": { "allOf": [ { "$ref": "#/components/schemas/namespaceHTTPLoadbalancerInventoryFilterType" } ], "x-f5xc-description-short": "Configuration parameter for http load balancer filter.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "nginx_one_server_filter": { "allOf": [ { "$ref": "#/components/schemas/namespaceNGINXOneServerInventoryFilterType" } ], "x-f5xc-description-short": "Configuration parameter for nginx one server filter.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "tcp_load_balancer_filter": { "allOf": [ { "$ref": "#/components/schemas/namespaceTCPLoadbalancerInventoryFilterType" } ], "x-f5xc-description-short": "Configuration parameter for tcp load balancer filter.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "third_party_application_filter": { "allOf": [ { "$ref": "#/components/schemas/namespaceThirdPartyApplicationFilterType" } ], "x-f5xc-description-short": "Configuration parameter for third party application filter.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "udp_load_balancer_filter": { "allOf": [ { "$ref": "#/components/schemas/namespaceUDPLoadbalancerInventoryFilterType" } ], "x-f5xc-description-short": "Configuration parameter for udp load balancer filter.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-description-short": "Request for inventory of application related objects.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for namespaceAllApplicationInventoryRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for namespaceAllApplicationInventoryRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "tenant_and_identity" }, "responseSchema": { "type": "object", "properties": { "loadbalancers": { "type": "integer" }, "origin_pools": { "type": "integer" }, "services_discovered": { "type": "integer" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for namespaceAllApplicationInventoryRequest" }, "fieldMetadata": { "bigip_virtual_server_filter": { "type": "object", "description": "BIG-IP Virtual Server Inventory Filter.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "bigip_virtual_server_filter.api_discovery": { "type": "boolean", "description": "Filter results with BIG-IP Virtual Server with API Discovery.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "bigip_virtual_server_filter.waf_configured": { "type": "boolean", "description": "Filter results with BIG-IP Virtual Server with WAF configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter": { "type": "object", "description": "HTTP Loadbalancer Inventory Filter.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.api_definition": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with API Definition.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.api_discovery": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with API Discovery.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.api_protection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with API Protection configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.api_schema_validation": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with API Schema Validation.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.bot_protection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Bot Protection configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.client_blocking": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Client Blocking.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.client_side_defense": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Client Side Defense configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.cookie_protection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Cookie Protection.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.cors_policy": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with CORS Policy.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.csrf_protection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with CSRF Protection.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.data_guard": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Data Guard.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.ddos_auto_mitigation": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with L7 DDoS Auto Mitigation enabled.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.ddos_mitigation": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with DDoS Mitigation Rules configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.ddos_protection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with L7 DDoS detection enabled.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.default_loadbalancer": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Default Loadbalancer.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.graph_ql_inspection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with GraphQL Inspection.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.http_only": { "type": "boolean", "description": "Filter results with HTTP only loadbalancers.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.ip_reputation": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with IP Reputation configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.malicious_user_detection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Malicious User Detection configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.malicious_user_mitigation": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Malicious User Mitigation.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.malware_protection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Malware Protection.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.mutual_tls": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with mTLS.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.namespace_service_policy": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Namespace Service Policy configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.origin_server_subset": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Origin Server Subset.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.private_advertisement": { "type": "boolean", "description": "Filter results with HTTP loadbalancers advertised privately.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.public_advertisement": { "type": "boolean", "description": "Filter results with HTTP loadbalancers advertised publicly.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "wireName": "public_advertisment" }, "cdn_load_balancer_filter.routes": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Routes.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.service_policy": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Service Policy configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.slow_ddos_mitigation": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Slow DDoS Mitigation.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.trusted_client": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Trusted Client.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.trusted_client_ip_headers": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Trusted Client IP Headers.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.waf": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with WAF configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "cdn_load_balancer_filter.waf_exclusion": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with WAF Exclusion.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter": { "type": "object", "description": "HTTP Loadbalancer Inventory Filter.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.api_definition": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with API Definition.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.api_discovery": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with API Discovery.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.api_protection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with API Protection configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.api_schema_validation": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with API Schema Validation.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.bot_protection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Bot Protection configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.client_blocking": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Client Blocking.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.client_side_defense": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Client Side Defense configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.cookie_protection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Cookie Protection.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.cors_policy": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with CORS Policy.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.csrf_protection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with CSRF Protection.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.data_guard": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Data Guard.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.ddos_auto_mitigation": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with L7 DDoS Auto Mitigation enabled.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.ddos_mitigation": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with DDoS Mitigation Rules configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.ddos_protection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with L7 DDoS detection enabled.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.default_loadbalancer": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Default Loadbalancer.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.graph_ql_inspection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with GraphQL Inspection.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.http_only": { "type": "boolean", "description": "Filter results with HTTP only loadbalancers.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.ip_reputation": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with IP Reputation configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.malicious_user_detection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Malicious User Detection configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.malicious_user_mitigation": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Malicious User Mitigation.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.malware_protection": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Malware Protection.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.mutual_tls": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with mTLS.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.namespace_service_policy": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Namespace Service Policy configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.origin_server_subset": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Origin Server Subset.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.private_advertisement": { "type": "boolean", "description": "Filter results with HTTP loadbalancers advertised privately.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.public_advertisement": { "type": "boolean", "description": "Filter results with HTTP loadbalancers advertised publicly.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "wireName": "public_advertisment" }, "http_load_balancer_filter.routes": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Routes.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.service_policy": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Service Policy configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.slow_ddos_mitigation": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Slow DDoS Mitigation.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.trusted_client": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Trusted Client.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.trusted_client_ip_headers": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with Trusted Client IP Headers.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.waf": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with WAF configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "http_load_balancer_filter.waf_exclusion": { "type": "boolean", "description": "Filter results with HTTP loadbalancers with WAF Exclusion.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "nginx_one_server_filter": { "type": "object", "description": "NGINX One Server Inventory Filter.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "nginx_one_server_filter.api_discovery": { "type": "boolean", "description": "Filter results with NGINX One Server with specified API Discovery enablement state.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "nginx_one_server_filter.waf_configured": { "type": "boolean", "description": "Filter results with NGINX One Server with specified WAF enablement state.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "tcp_load_balancer_filter": { "type": "object", "description": "TCP Loadbalancer inventory Filter.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "tcp_load_balancer_filter.namespace_service_policy": { "type": "boolean", "description": "Filter results with TCP loadbalancers with Namespace Service Policy configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "tcp_load_balancer_filter.private_advertisement": { "type": "boolean", "description": "Filter results with TCP loadbalancers advertised privately.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "tcp_load_balancer_filter.public_advertisement": { "type": "boolean", "description": "Filter results with TCP loadbalancers advertised publicly.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "wireName": "public_advertisment" }, "tcp_load_balancer_filter.service_policy": { "type": "boolean", "description": "Filter results with TCP loadbalancers with Service Policy configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "tcp_load_balancer_filter.tls_encryption": { "type": "boolean", "description": "Filter results with TCP loadbalancers with TLS Encryption configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "third_party_application_filter": { "type": "object", "description": "Third Party Application Inventory Filter.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "third_party_application_filter.api_discovery": { "type": "boolean", "description": "Filter results with Third Party Application with API Discovery.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "udp_load_balancer_filter": { "type": "object", "description": "UDP Loadbalancer inventory Filter.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "udp_load_balancer_filter.namespace_service_policy": { "type": "boolean", "description": "Filter results with UDP loadbalancers with Namespace Service Policy configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "udp_load_balancer_filter.private_advertisement": { "type": "boolean", "description": "Filter results with UDP loadbalancers advertised privately.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "udp_load_balancer_filter.public_advertisement": { "type": "boolean", "description": "Filter results with UDP loadbalancers advertised publicly.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "wireName": "public_advertisment" }, "udp_load_balancer_filter.service_policy": { "type": "boolean", "description": "Filter results with UDP loadbalancers with Service Policy configured.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "bigip_virtual_servers", "type": "object", "description": "" }, { "field": "cdn_loadbalancers", "type": "object", "description": "" }, { "field": "http_loadbalancers", "type": "object", "description": "" }, { "field": "loadbalancers", "type": "integer", "description": "Number of HTTP and TCP Load Balancers configured." }, { "field": "nginx_one_servers", "type": "object", "description": "" }, { "field": "origin_pools", "type": "integer", "description": "Number of origin pools configured." }, { "field": "services_discovered", "type": "integer", "description": "Number of services discovered." }, { "field": "tcp_loadbalancers", "type": "object", "description": "" }, { "field": "third_party_applications", "type": "object", "description": "" }, { "field": "udp_loadbalancers", "type": "object", "description": "" } ] } ] }, "all-application-inventory-waf-filters": { "name": "all-application-inventory-waf-filters", "displayName": "All Application Inventory Waf Filters", "operations": [ { "name": "create_all_application_inventory_waf_filter", "description": "All Application Objects Inventory with WAF Filters.", "method": "POST", "path": "/api/config/namespaces/system/all_application_inventory_waf_filters", "dangerLevel": "medium", "parameters": [], "bodySchema": { "type": "object", "description": "Request for inventory of application related objects with WAF Filter.", "title": "AllApplicationInventoryWafFilterRequest", "x-displayname": "All Application related objects inventory request with WAF Filter.", "x-ves-oneof-field-waf_filter_choice": "[\"exclusion_signature_id\",\"exclusion_violation_type\"]", "x-ves-proto-message": "ves.io.schema.namespace.AllApplicationInventoryWafFilterRequest", "properties": { "exclusion_signature_id": { "type": "integer", "description": "Exclusive with [exclusion_violation_type]", "title": "WAF Exclusion Rule Signature Id", "format": "int64", "x-displayname": "WAF Exclusion Rule Signature ID.", "x-f5xc-description-short": "Exclusive with [exclusion_violation_type].", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-field-mutability": "read-only" }, "exclusion_violation_type": { "allOf": [ { "$ref": "#/components/schemas/app_firewallAppFirewallViolationType" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-description-short": "Request for inventory of application related objects with WAF Filter.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for namespaceAllApplicationInventoryWafFilterRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for namespaceAllApplicationInventoryWafFilterRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "tenant_and_identity" }, "responseSchema": { "type": "object", "properties": { "cdn_loadbalancers": { "type": "array" }, "http_loadbalancers": { "type": "array" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for namespaceAllApplicationInventoryWafFilterRequest" }, "fieldMetadata": { "exclusion_signature_id": { "type": "integer", "description": "Exclusive with [exclusion_violation_type]", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "exclusion_violation_type": { "type": "string", "description": "List of all supported Violation Types\n\nVIOL_NONE\nVIOL_FILETYPE\nVIOL_METHOD\nVIOL_MANDATORY_HEADER\nVIOL_HTTP_RESPONSE_STATUS\nVIOL_REQUEST_MAX_LENGTH\nVIOL_FILE_UPLOAD\nVIOL_FILE_UPLOAD_IN_BODY\nVIOL_XML_MALFORMED\nVIOL_JSON_MALFORMED\nVIOL_ASM_COOKIE_MODIFIED\nVIOL_HTTP_PROTOCOL_MULTIPLE_HOST_HEADERS\nVIOL_HTTP_PROTOCOL_BAD_HOST_HEADER_VALUE\nVIOL_HTTP_PROTOCOL_UNPARSABLE_REQUEST_CONTENT\nVIOL_HTTP_PROTOCOL_NULL_IN_REQUEST\nVIOL_HTTP_PROTOCOL_BAD_HTTP_VERSION\nVIOL_HTTP_PROTOCOL_CRLF_CHARACTERS_BEFORE_REQUEST_START\nVIOL_HTTP_PROTOCOL_NO_HOST_HEADER_IN_HTTP_1_1_REQUEST\nVIOL_HTTP_PROTOCOL_BAD_MULTIPART_PARAMETERS_PARSING\nVIOL_HTTP_PROTOCOL_SEVERAL_CONTENT_LENGTH_HEADERS\nVIOL_HTTP_PROTOCOL_CONTENT_LENGTH_SHOULD_BE_A_POSITIVE_NUMBER\nVIOL_EVASION_DIRECTORY_TRAVERSALS\nVIOL_MALFORMED_REQUEST\nVIOL_EVASION_MULTIPLE_DECODING\nVIOL_DATA_GUARD\nVIOL_EVASION_APACHE_WHITESPACE\nVIOL_COOKIE_MODIFIED\nVIOL_EVASION_IIS_UNICODE_CODEPOINTS\nVIOL_EVASION_IIS_BACKSLASHES\nVIOL_EVASION_PERCENT_U_DECODING\nVIOL_EVASION_BARE_BYTE_DECODING\nVIOL_EVASION_BAD_UNESCAPE\nVIOL_HTTP_PROTOCOL_BAD_MULTIPART_FORMDATA_REQUEST_PARSING\nVIOL_HTTP_PROTOCOL_BODY_IN_GET_OR_HEAD_REQUEST\nVIOL_HTTP_PROTOCOL_HIGH_ASCII_CHARACTERS_IN_HEADERS\nVIOL_ENCODING\nVIOL_COOKIE_MALFORMED\nVIOL_GRAPHQL_FORMAT\nVIOL_GRAPHQL_MALFORMED\nVIOL_GRAPHQL_INTROSPECTION_QUERY.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "default": "VIOL_NONE" } }, "oneOfVariants": { "waf_filter_choice": [ "exclusion_signature_id", "exclusion_violation_type" ] }, "responseSummary": [ { "field": "cdn_loadbalancers", "type": "array", "description": "Application Inventory of configured CDN Loadbalancers with WAF Filters." }, { "field": "http_loadbalancers", "type": "array", "description": "Application Inventory of configured HTTP Loadbalancers with WAF Filters." } ] } ] }, "all-ns-alerts": { "name": "all-ns-alerts", "displayName": "All Ns Alerts", "operations": [ { "name": "list_all_ns_alerts", "description": "GET Alerts.", "method": "GET", "path": "/api/data/namespaces/system/all_ns_alerts", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "query", "required": false, "type": "string" }, { "name": "inactive", "in": "query", "required": false, "type": "boolean" }, { "name": "silenced", "in": "query", "required": false, "type": "boolean" }, { "name": "inhibited", "in": "query", "required": false, "type": "boolean" }, { "name": "unprocessed", "in": "query", "required": false, "type": "boolean" }, { "name": "filter", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "data": { "type": "string" } } }, "responseSummary": [ { "field": "data", "type": "string", "description": "Data contains the list of alerts." } ] } ] }, "allowed-tenants": { "name": "allowed-tenants", "displayName": "Allowed Tenants", "operations": [ { "name": "create_allowed_tenant", "description": "Create Allowed Tenant.", "method": "POST", "path": "/api/web/namespaces/{namespace}/allowed_tenants", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Create' RPC.", "title": "CreateRequest is used to create an instance of allowed_tenant", "x-displayname": "Create Request.", "x-ves-proto-message": "ves.io.schema.tenant_management.allowed_tenant.CreateRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectCreateMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/tenant_managementallowed_tenantCreateSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for tenant_managementallowed_tenantCreateRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for tenant_managementallowed_tenantCreateRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "tenant_and_identity" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for tenant_managementallowed_tenantCreateRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Creates a allowed_tenant config instance. Name of the object is name of the tenant that is allowed to manage.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.allowed_groups": { "type": "array", "description": "List of references to allowed user_group objects for access in to tenant.\nAdmin can use this to control API access by users from from original tenant into an allowed tenant.\nUser access from original tenant into an allowed tenant will be associated to underlying roles in this user_group.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 32, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tenant_id": { "type": "string", "description": "Specify the Tenant ID of the Original Tenant which is allowed to manage.\nNOTE: this is the name of the tenant configuration obj. Not UID.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 256, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } } }, "responseSummary": [ { "field": "metadata", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "system_metadata", "type": "object", "description": "" } ] }, { "name": "replace_allowed_tenant", "description": "Replace Allowed Tenant.", "method": "PUT", "path": "/api/web/namespaces/{namespace}/allowed_tenants/{name}", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Replace' RPC.", "title": "ReplaceRequest is used to replace contents of a allowed_tenant", "x-displayname": "Replace Request.", "x-ves-proto-message": "ves.io.schema.tenant_management.allowed_tenant.ReplaceRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectReplaceMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/allowed_tenantReplaceSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "resource_version": { "type": "string", "x-f5xc-concurrency-token": { "server_assigned": true, "echo_on_operations": [ "replace" ] } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for allowed_tenantReplaceRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for allowed_tenantReplaceRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "tenant_and_identity" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for allowed_tenantReplaceRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Replaces attributes of a allowed_tenant instance including its metadata like labels, description etc.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.allowed_groups": { "type": "array", "description": "List of references to allowed user_group objects for access in to tenant.\nAdmin can use this to control API access by users from from original tenant into an allowed tenant.\nUser access from original tenant into an allowed tenant will be associated to underlying roles in this user_group.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 32, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.tenant_id": { "type": "string", "description": "Specify the Tenant ID of the Original Tenant which is allowed to manage.\nNOTE: this is the name of the tenant configuration obj. Not UID.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 256, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } } } }, { "name": "list_allowed_tenants", "description": "List Allowed Tenant.", "method": "GET", "path": "/api/web/namespaces/{namespace}/allowed_tenants", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "delete_allowed_tenant", "description": "DELETE Allowed Tenant.", "method": "DELETE", "path": "/api/web/namespaces/{namespace}/allowed_tenants/{name}", "dangerLevel": "high", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'DELETE' RPC.", "title": "DeleteRequest is used to delete a allowed_tenant", "x-displayname": "DELETE Request.", "x-ves-proto-message": "ves.io.schema.tenant_management.allowed_tenant.DeleteRequest", "properties": { "fail_if_referred": { "type": "boolean", "description": "Fail the DELETE operation if this object is being referred by other objects.", "title": "fail_if_referred", "format": "boolean", "x-displayname": "Fail-If-Referred.", "x-f5xc-description-short": "Fail the DELETE operation if this object is being referred by other objects.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Name of the configuration object.", "title": "name", "x-displayname": "Name", "x-ves-example": "Name", "x-f5xc-example": "name", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the configuration object is present.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-description-short": "Namespace in which the configuration object is present.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for allowed_tenantDeleteRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for allowed_tenantDeleteRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "tenant_and_identity" } }, { "name": "get_allowed_tenant", "description": "GET Allowed Tenant.", "method": "GET", "path": "/api/web/namespaces/{namespace}/allowed_tenants/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "status": { "type": "array" }, "resource_version": { "type": "string" } } }, "responseSummary": [ { "field": "create_form", "type": "object", "description": "" }, { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "replace_form", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "status", "type": "array", "description": "The status reported by different services for this configuration object." }, { "field": "system_metadata", "type": "object", "description": "" }, { "field": "resource_version", "type": "string", "description": "" } ] } ] }, "allowed-tenants-support-tenant-access": { "name": "allowed-tenants-support-tenant-access", "displayName": "Allowed Tenants Support Tenant Access", "operations": [ { "name": "list_allowed_tenants_support_tenant_access", "description": "GET Support Tenant Access.", "method": "GET", "path": "/api/web/namespaces/system/allowed_tenants/support-tenant/access", "dangerLevel": "low", "parameters": [], "responseSchema": { "type": "object", "properties": {} }, "responseSummary": [ { "field": "access_config", "type": "object", "description": "" } ] }, { "name": "create_allowed_tenants_support_tenant_acce", "description": "Update Support Tenant Access.", "method": "POST", "path": "/api/web/namespaces/system/allowed_tenants/support-tenant/access", "dangerLevel": "medium", "parameters": [], "bodySchema": { "type": "object", "description": "Request to update access control configurations for a support tenant.", "title": "UpdateSupportTenantAccessReq", "x-displayname": "Support Tenant Access Update Request.", "x-ves-proto-message": "ves.io.schema.tenant_management.allowed_tenant.UpdateSupportTenantAccessReq", "properties": { "access_config": { "allOf": [ { "$ref": "#/components/schemas/allowed_tenantAllowedAccessConfig" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-description-short": "Request to update access control configurations for a support tenant.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for allowed_tenantUpdateSupportTenantAccessReq", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for allowed_tenantUpdateSupportTenantAccessReq\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "tenant_and_identity" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for allowed_tenantUpdateSupportTenantAccessReq" }, "fieldMetadata": { "access_config": { "type": "object", "description": "Shape for storing access config for a tenant.\nDefault field OPTIONS - disable, read-only, read_write provided for easy access controls\nand underlying allowed groups corresponding to each usecase will be updated accordingly.\nMainly used for storing state for support related tenant access.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "access_config.disable": { "type": "boolean", "description": "Temporarily revoke access to this tenant.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "access_config.read_only": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "access_config.read_write_all": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "access_config.read_write_ns": { "type": "object", "description": "Shape of read write access control for namespaces.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "access_config.read_write_ns.namespaces": { "type": "array", "description": "List of namespace name read/write access needs to be restricted to.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 32, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } } }, "oneOfVariants": { "access_config.access_type_choice": [ "read_only", "read_write_all", "read_write_ns" ] }, "responseSummary": [ { "field": "access_config", "type": "object", "description": "" } ] } ] }, "api-crawlers": { "name": "api-crawlers", "displayName": "Api Crawlers", "operations": [ { "name": "create_api_crawler", "description": "Create API Crawler.", "method": "POST", "path": "/api/config/namespaces/{namespace}/api_crawlers", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Create' RPC.", "title": "CreateRequest is used to create an instance of api_crawler", "x-displayname": "Create Request.", "x-ves-proto-message": "ves.io.schema.api_sec.api_crawler.CreateRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectCreateMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/api_crawlerCreateSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for api_crawlerCreateRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for api_crawlerCreateRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "api" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for api_crawlerCreateRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.domains": { "type": "array", "description": "API Crawler Configuration.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 32, "minItems": 1, "uniqueItems": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } } }, "responseSummary": [ { "field": "metadata", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "system_metadata", "type": "object", "description": "" } ] }, { "name": "replace_api_crawler", "description": "Replace API crawler.", "method": "PUT", "path": "/api/config/namespaces/{namespace}/api_crawlers/{name}", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Replace' RPC.", "title": "ReplaceRequest is used to replace contents of a api_crawler", "x-displayname": "Replace Request.", "x-ves-proto-message": "ves.io.schema.api_sec.api_crawler.ReplaceRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectReplaceMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/api_crawlerReplaceSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "resource_version": { "type": "string", "x-f5xc-concurrency-token": { "server_assigned": true, "echo_on_operations": [ "replace" ] } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for api_crawlerReplaceRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for api_crawlerReplaceRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "api" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for api_crawlerReplaceRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.domains": { "type": "array", "description": "API Crawler Configuration.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 32, "minItems": 1, "uniqueItems": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } } } }, { "name": "list_api_crawlers", "description": "List API Crawler.", "method": "GET", "path": "/api/config/namespaces/{namespace}/api_crawlers", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "delete_api_crawler", "description": "DELETE API Crawler.", "method": "DELETE", "path": "/api/config/namespaces/{namespace}/api_crawlers/{name}", "dangerLevel": "high", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'DELETE' RPC.", "title": "DeleteRequest is used to delete a api_crawler", "x-displayname": "DELETE Request.", "x-ves-proto-message": "ves.io.schema.api_sec.api_crawler.DeleteRequest", "properties": { "fail_if_referred": { "type": "boolean", "description": "Fail the DELETE operation if this object is being referred by other objects.", "title": "fail_if_referred", "format": "boolean", "x-displayname": "Fail-If-Referred.", "x-f5xc-description-short": "Fail the DELETE operation if this object is being referred by other objects.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Name of the configuration object.", "title": "name", "x-displayname": "Name", "x-ves-example": "Name", "x-f5xc-example": "name", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the configuration object is present.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-description-short": "Namespace in which the configuration object is present.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for api_crawlerDeleteRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for api_crawlerDeleteRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "api" } }, { "name": "get_api_crawler", "description": "GET API crawler.", "method": "GET", "path": "/api/config/namespaces/{namespace}/api_crawlers/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "status": { "type": "array" }, "resource_version": { "type": "string" } } }, "responseSummary": [ { "field": "create_form", "type": "object", "description": "" }, { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "replace_form", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "status", "type": "array", "description": "The status reported by different services for this configuration object." }, { "field": "system_metadata", "type": "object", "description": "" }, { "field": "resource_version", "type": "string", "description": "" } ] } ] }, "api-credentials": { "name": "api-credentials", "displayName": "Api Credentials", "operations": [ { "name": "create_api_credential", "description": "Activate API credential.", "method": "POST", "path": "/api/web/namespaces/{namespace}/activate/api_credentials", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "GET credential object with a given name.", "title": "Get credential request", "x-displayname": "GET Credential.", "x-ves-proto-message": "ves.io.schema.api_credential.GetRequest", "properties": { "name": { "type": "string", "description": "Name of API credential.", "title": "Credential name", "x-displayname": "Name", "x-ves-example": "Value", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-example": "value", "x-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Value of namespace is always \"system\".", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "System", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-example": "system", "x-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-description-short": "GET credential object with a given name.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for api_credentialGetRequest", "required_fields": [ "name", "namespace" ], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for api_credentialGetRequest\nmetadata:\n name: example\n namespace: default\nspec:\n name: value\n namespace: value", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {\n \"name\": \"value\",\n \"namespace\": \"value\"\n }\n}" }, "x-f5xc-cli-domain": "api" }, "responseSchema": { "type": "object", "properties": { "status": { "type": "boolean" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": { "name": "value", "namespace": "value" } }, "requiredFields": [ "name", "namespace" ], "description": "Minimum configuration for api_credentialGetRequest" }, "fieldMetadata": { "name": { "type": "string", "description": "Name of API credential.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Value of namespace is always \"system\".", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } } }, "responseSummary": [ { "field": "status", "type": "boolean", "description": "Result status flag." } ] }, { "name": "list_api_credentials", "description": "List API Credentials.", "method": "GET", "path": "/api/web/namespaces/{namespace}/api_credentials", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "responseSchema": { "type": "object", "properties": { "items": { "type": "array" } } }, "responseSummary": [ { "field": "items", "type": "array", "description": "List of credential items." } ] }, { "name": "get_api_credential", "description": "GET API Credentials.", "method": "GET", "path": "/api/web/namespaces/{namespace}/api_credentials/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "responseSchema": { "type": "object", "properties": {} }, "responseSummary": [ { "field": "object", "type": "object", "description": "" } ] } ] }, "api-definitions": { "name": "api-definitions", "displayName": "Api Definitions", "operations": [ { "name": "create_api_definition", "description": "Create API Definition.", "method": "POST", "path": "/api/config/namespaces/{namespace}/api_definitions", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Create' RPC.", "title": "CreateRequest is used to create an instance of api_definition", "x-displayname": "Create Request.", "x-ves-proto-message": "ves.io.schema.views.api_definition.CreateRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectCreateMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/viewsapi_definitionCreateSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "API definition for documenting and protecting HTTP APIs", "required_fields": [ "metadata.name", "metadata.namespace" ], "mutually_exclusive_groups": [], "example_yaml": "apiVersion: v1\nkind: api_definition\nmetadata:\n name: example-api\n namespace: default\nspec: {}\n", "example_json": "{\n \"metadata\": {\n \"name\": \"example-api\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}\n" }, "x-f5xc-cli-domain": "api" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example-api", "namespace": "default" }, "spec": {} }, "requiredFields": [ "metadata.name", "metadata.namespace" ], "description": "API definition for documenting and protecting HTTP APIs" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Create API Definition.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.api_inventory_exclusion_list": { "type": "array", "description": "List of API Endpoints excluded from the API Inventory.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5000, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.api_inventory_inclusion_list": { "type": "array", "description": "List of API Endpoints included in the API Inventory.\nTypically, discovered API endpoints are added to the API Inventory using this list.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5000, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.mixed_schema_origin": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.non_api_endpoints": { "type": "array", "description": "List of Non-API Endpoints.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5000, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.strict_schema_origin": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.swagger_specs": { "type": "array", "description": "URLs of versioned OpenAPI files uploaded through Web App & API Protection > Files > Swagger Files. The 512-byte item limit is a URL-length limit; inline string:/// OpenAPI content is rejected and does not create an API-definition object.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 20, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "spec.schema_updates_strategy": [ "mixed_schema_origin", "strict_schema_origin" ] }, "responseSummary": [ { "field": "metadata", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "system_metadata", "type": "object", "description": "" } ] }, { "name": "replace_api_definition", "description": "Replace API Definition.", "method": "PUT", "path": "/api/config/namespaces/{namespace}/api_definitions/{name}", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Replace' RPC.", "title": "ReplaceRequest is used to replace contents of a api_definition", "x-displayname": "Replace Request.", "x-ves-proto-message": "ves.io.schema.views.api_definition.ReplaceRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectReplaceMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/viewsapi_definitionReplaceSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "resource_version": { "type": "string", "x-f5xc-concurrency-token": { "server_assigned": true, "echo_on_operations": [ "replace" ] } } }, "x-f5xc-minimum-configuration": { "description": "API definition for documenting and protecting HTTP APIs", "required_fields": [ "metadata.name", "metadata.namespace" ], "mutually_exclusive_groups": [], "example_yaml": "apiVersion: v1\nkind: api_definition\nmetadata:\n name: example-api\n namespace: default\nspec: {}\n", "example_json": "{\n \"metadata\": {\n \"name\": \"example-api\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}\n" }, "x-f5xc-cli-domain": "api" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example-api", "namespace": "default" }, "spec": {} }, "requiredFields": [ "metadata.name", "metadata.namespace" ], "description": "API definition for documenting and protecting HTTP APIs" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Replace API Definition.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.api_inventory_exclusion_list": { "type": "array", "description": "List of API Endpoints excluded from the API Inventory.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5000, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.api_inventory_inclusion_list": { "type": "array", "description": "List of API Endpoints included in the API Inventory.\nTypically, discovered API endpoints are added to the API Inventory using this list.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5000, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.mixed_schema_origin": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.non_api_endpoints": { "type": "array", "description": "List of Non-API Endpoints.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5000, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.strict_schema_origin": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.swagger_specs": { "type": "array", "description": "URLs of versioned OpenAPI files uploaded through Web App & API Protection > Files > Swagger Files. The 512-byte item limit is a URL-length limit; inline string:/// OpenAPI content is rejected and does not create an API-definition object.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 20, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "spec.schema_updates_strategy": [ "mixed_schema_origin", "strict_schema_origin" ] } }, { "name": "list_api_definitions", "description": "List API Definition.", "method": "GET", "path": "/api/config/namespaces/{namespace}/api_definitions", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "delete_api_definition", "description": "DELETE API Definition.", "method": "DELETE", "path": "/api/config/namespaces/{namespace}/api_definitions/{name}", "dangerLevel": "high", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'DELETE' RPC.", "title": "DeleteRequest is used to delete a api_definition", "x-displayname": "DELETE Request.", "x-ves-proto-message": "ves.io.schema.views.api_definition.DeleteRequest", "properties": { "fail_if_referred": { "type": "boolean", "description": "Fail the DELETE operation if this object is being referred by other objects.", "title": "fail_if_referred", "format": "boolean", "x-displayname": "Fail-If-Referred.", "x-f5xc-description-short": "Fail the DELETE operation if this object is being referred by other objects.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Name of the configuration object.", "title": "name", "x-displayname": "Name", "x-ves-example": "Name", "x-f5xc-example": "name", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the configuration object is present.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-description-short": "Namespace in which the configuration object is present.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for api_definitionDeleteRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for api_definitionDeleteRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "api" } }, { "name": "get_api_definition", "description": "GET API Definition.", "method": "GET", "path": "/api/config/namespaces/{namespace}/api_definitions/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "status": { "type": "array" }, "resource_version": { "type": "string" } } }, "responseSummary": [ { "field": "create_form", "type": "object", "description": "" }, { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "replace_form", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "status", "type": "array", "description": "The status reported by different services for this configuration object." }, { "field": "system_metadata", "type": "object", "description": "" }, { "field": "resource_version", "type": "string", "description": "" } ] } ] }, "api-definitions-assign": { "name": "api-definitions-assign", "displayName": "Api Definitions Assign", "operations": [ { "name": "create_api_definitions_assign", "description": "Assign API Definition.", "method": "POST", "path": "/api/config/namespaces/{namespace}/http_loadbalancers/{name}/api_definitions/assign", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "Request form for Assign API Definition.", "title": "Assign API Definition Request", "x-displayname": "Assign API Definition Request.", "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.AssignAPIDefinitionReq", "properties": { "api_definition": { "allOf": [ { "$ref": "#/components/schemas/schemaviewsObjectRefType" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "create_if_not_exists": { "type": "boolean", "description": "Create an empty API Definition object, if not exists.", "title": "Create if not exists", "format": "boolean", "x-displayname": "Create if not exists.", "x-f5xc-description-short": "Create an empty API Definition object, if not exists.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Name of the HTTP Load Balancer.", "title": "Name", "x-displayname": "Name", "x-ves-example": "Blogging-app.", "x-f5xc-example": "blogging-app", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace of the HTTP Load Balancer.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Shared", "x-f5xc-example": "shared", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for http_loadbalancerAssignAPIDefinitionReq", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for http_loadbalancerAssignAPIDefinitionReq\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "virtual" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for http_loadbalancerAssignAPIDefinitionReq" }, "fieldMetadata": { "api_definition": { "type": "object", "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "api_definition.name": { "type": "string", "description": "When a configuration object(e.g. Virtual_host) refers to another(e.g route)\nthen name will hold the referred object's(e.g. Route's) name.", "constraints": { "constraintType": "string", "category": "discovery", "minLength": 1, "maxLength": 128, "byteLength": { "max": 128, "min": 1 }, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "api_definition.namespace": { "type": "string", "description": "When a configuration object(e.g. Virtual_host) refers to another(e.g route)\nthen namespace will hold the referred object's(e.g. Route's) namespace.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true, "byteLength": { "max": 64 } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "api_definition.tenant": { "type": "string", "description": "When a configuration object(e.g. Virtual_host) refers to another(e.g route)\nthen tenant will hold the referred object's(e.g. Route's) tenant.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 64, "byteLength": { "max": 64 }, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "create_if_not_exists": { "type": "boolean", "description": "Create an empty API Definition object, if not exists.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Name of the HTTP Load Balancer.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Namespace of the HTTP Load Balancer.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } } } ] }, "api-definitions-available": { "name": "api-definitions-available", "displayName": "Api Definitions Available", "operations": [ { "name": "list_api_definitions_available", "description": "List Available API Definitions.", "method": "GET", "path": "/api/config/namespaces/{namespace}/http_loadbalancers/{name}/api_definitions/available", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "available_api_definitions": { "type": "array" } } }, "responseSummary": [ { "field": "available_api_definitions", "type": "array", "description": "The list of references to available API Definition objects." } ] } ] }, "api-definitions-without-shared": { "name": "api-definitions-without-shared", "displayName": "Api Definitions Without Shared", "operations": [ { "name": "list_api_definitions_without_shared", "description": "List Available API Definitions.", "method": "GET", "path": "/api/config/namespaces/{namespace}/api_definitions_without_shared", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "responseSchema": { "type": "object", "properties": { "available_api_definitions": { "type": "array" } } }, "responseSummary": [ { "field": "available_api_definitions", "type": "array", "description": "The list of references to available API Definition objects." } ] } ] }, "api-discoverys": { "name": "api-discoverys", "displayName": "Api Discoverys", "operations": [ { "name": "create_api_discovery", "description": "Create API Discovery.", "method": "POST", "path": "/api/config/namespaces/{namespace}/api_discoverys", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Create' RPC.", "title": "CreateRequest is used to create an instance of api_discovery", "x-displayname": "Create Request.", "x-ves-proto-message": "ves.io.schema.api_sec.api_discovery.CreateRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectCreateMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/api_discoveryCreateSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "API discovery configuration for automatic API endpoint detection", "required_fields": [ "metadata.name", "metadata.namespace", "spec.user_defined_api_discovery_policy" ], "mutually_exclusive_groups": [], "example_yaml": "apiVersion: v1\nkind: api_discovery\nmetadata:\n name: example-discovery\n namespace: default\nspec:\n user_defined_api_discovery_policy: {}\n", "example_json": "{\n \"metadata\": {\n \"name\": \"example-discovery\",\n \"namespace\": \"default\"\n },\n \"spec\": {\n \"user_defined_api_discovery_policy\": {}\n }\n}\n" }, "x-f5xc-cli-domain": "api" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example-discovery", "namespace": "default" }, "spec": { "user_defined_api_discovery_policy": {} } }, "requiredFields": [ "metadata.name", "metadata.namespace", "spec.user_defined_api_discovery_policy" ], "description": "API discovery configuration for automatic API endpoint detection" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Create API discovery creates a new object in the storage backend for metadata.namespace.", "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.custom_auth_types": { "type": "array", "description": "Select your custom authentication types to be detected in the API discovery.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 10, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.user_defined_api_discovery_policy": { "type": "object", "description": "Rules are evaluated sequentially, top to bottom. If no rules are added, all traffic will be discovered or ignored based on the selection in the 'Default Behaviour of the Rule Set' field.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.user_defined_api_discovery_policy.discovery_rules": { "type": "array", "description": "Define rules to include or exclude endpoints by path, domain, or header. Rules run top to bottom; unmatched endpoints follow the default action.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 100, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.user_defined_api_discovery_policy.exclusive": { "type": "object", "description": "Configuration for exclusion action.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.user_defined_api_discovery_policy.inclusive": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "spec.user_defined_api_discovery_policy.default_behavior_choice": [ "exclusive", "inclusive" ], "spec.user_defined_api_discovery_policy.exclusive.action_choice": [ "archive", "ignore" ] }, "responseSummary": [ { "field": "metadata", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "system_metadata", "type": "object", "description": "" } ] }, { "name": "replace_api_discovery", "description": "Replace API Discovery.", "method": "PUT", "path": "/api/config/namespaces/{namespace}/api_discoverys/{name}", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Replace' RPC.", "title": "ReplaceRequest is used to replace contents of a api_discovery", "x-displayname": "Replace Request.", "x-ves-proto-message": "ves.io.schema.api_sec.api_discovery.ReplaceRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectReplaceMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/api_discoveryReplaceSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "resource_version": { "type": "string", "x-f5xc-concurrency-token": { "server_assigned": true, "echo_on_operations": [ "replace" ] } } }, "x-f5xc-minimum-configuration": { "description": "API discovery configuration for automatic API endpoint detection", "required_fields": [ "metadata.name", "metadata.namespace", "spec.user_defined_api_discovery_policy" ], "mutually_exclusive_groups": [], "example_yaml": "apiVersion: v1\nkind: api_discovery\nmetadata:\n name: example-discovery\n namespace: default\nspec:\n user_defined_api_discovery_policy: {}\n", "example_json": "{\n \"metadata\": {\n \"name\": \"example-discovery\",\n \"namespace\": \"default\"\n },\n \"spec\": {\n \"user_defined_api_discovery_policy\": {}\n }\n}\n" }, "x-f5xc-cli-domain": "api" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example-discovery", "namespace": "default" }, "spec": { "user_defined_api_discovery_policy": {} } }, "requiredFields": [ "metadata.name", "metadata.namespace", "spec.user_defined_api_discovery_policy" ], "description": "API discovery configuration for automatic API endpoint detection" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Replace api_discovery replaces an existing object in the storage backend for metadata.namespace.", "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.custom_auth_types": { "type": "array", "description": "Select your custom authentication types to be detected in the API discovery.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 10, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.user_defined_api_discovery_policy": { "type": "object", "description": "Rules are evaluated sequentially, top to bottom. If no rules are added, all traffic will be discovered or ignored based on the selection in the 'Default Behaviour of the Rule Set' field.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.user_defined_api_discovery_policy.discovery_rules": { "type": "array", "description": "Define rules to include or exclude endpoints by path, domain, or header. Rules run top to bottom; unmatched endpoints follow the default action.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 100, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.user_defined_api_discovery_policy.exclusive": { "type": "object", "description": "Configuration for exclusion action.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.user_defined_api_discovery_policy.inclusive": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "spec.user_defined_api_discovery_policy.default_behavior_choice": [ "exclusive", "inclusive" ], "spec.user_defined_api_discovery_policy.exclusive.action_choice": [ "archive", "ignore" ] } }, { "name": "list_api_discoverys", "description": "List API Discovery.", "method": "GET", "path": "/api/config/namespaces/{namespace}/api_discoverys", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "delete_api_discovery", "description": "DELETE API Discovery.", "method": "DELETE", "path": "/api/config/namespaces/{namespace}/api_discoverys/{name}", "dangerLevel": "high", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'DELETE' RPC.", "title": "DeleteRequest is used to delete a api_discovery", "x-displayname": "DELETE Request.", "x-ves-proto-message": "ves.io.schema.api_sec.api_discovery.DeleteRequest", "properties": { "fail_if_referred": { "type": "boolean", "description": "Fail the DELETE operation if this object is being referred by other objects.", "title": "fail_if_referred", "format": "boolean", "x-displayname": "Fail-If-Referred.", "x-f5xc-description-short": "Fail the DELETE operation if this object is being referred by other objects.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Name of the configuration object.", "title": "name", "x-displayname": "Name", "x-ves-example": "Name", "x-f5xc-example": "name", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the configuration object is present.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-description-short": "Namespace in which the configuration object is present.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for api_discoveryDeleteRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for api_discoveryDeleteRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "api" } }, { "name": "get_api_discovery", "description": "GET API Discovery.", "method": "GET", "path": "/api/config/namespaces/{namespace}/api_discoverys/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "status": { "type": "array" }, "resource_version": { "type": "string" } } }, "responseSummary": [ { "field": "create_form", "type": "object", "description": "" }, { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "replace_form", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "status", "type": "array", "description": "The status reported by different services for this configuration object." }, { "field": "system_metadata", "type": "object", "description": "" }, { "field": "resource_version", "type": "string", "description": "" } ] } ] }, "api-endpoint": { "name": "api-endpoint", "displayName": "Api Endpoint", "operations": [ { "name": "create_api_endpoint", "description": "GET API Endpoint.", "method": "POST", "path": "/api/ml/data/namespaces/{namespace}/virtual_hosts/{name}/api_endpoint", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "Request shape for GET API endpoint API.", "title": "API endpoint GET request Per Virtual Host", "x-displayname": "API Endpoint Request per Virtual Host.", "x-ves-proto-message": "ves.io.schema.virtual_host.APIEndpointReq", "properties": { "api_endpoint_info_request": { "type": "array", "description": "List of additional things that needs to be sent as part of the request.", "title": "Api Endpoint Info Request", "items": { "$ref": "#/components/schemas/app_typeApiEndpointInfoRequest" }, "x-displayname": "API Endpoint Info Request.", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.unique": "true" }, "x-validation-rules": { "ves.io.schema.rules.repeated.unique": "true" }, "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-description-short": "List of additional things that needs to be sent as part of the request.", "x-f5xc-constraints": { "constraintType": "array", "category": "discovery", "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "collapsed_url": { "type": "string", "description": "Requested API endPoint for API URL.", "title": "API URL", "x-displayname": "API URL", "x-ves-example": "API/v1/user_id/DYN/vehicle_id/DYN.", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-example": "api/v1/user_id/DYN/vehicle_id/DYN", "x-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "domains": { "type": "array", "description": "List of domains that needs to be sent as part of the request\nOptional filter by domains. If absent, all domains are considered.", "title": "List of Domain", "maxItems": 5, "items": { "type": "string", "minLength": 1, "maxLength": 256 }, "x-displayname": "List of Domain.", "x-ves-example": "www.example.com.", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.items.string.max_len": "256", "ves.io.schema.rules.repeated.items.string.min_len": "1", "ves.io.schema.rules.repeated.items.string.vh_domain_or_ip": "true", "ves.io.schema.rules.repeated.max_items": "5", "ves.io.schema.rules.repeated.unique": "true" }, "x-f5xc-example": "www.example.com", "x-validation-rules": { "ves.io.schema.rules.repeated.items.string.max_len": "256", "ves.io.schema.rules.repeated.items.string.min_len": "1", "ves.io.schema.rules.repeated.items.string.vh_domain_or_ip": "true", "ves.io.schema.rules.repeated.max_items": "5", "ves.io.schema.rules.repeated.unique": "true" }, "x-f5xc-description-short": "List of domains that needs to be sent as part of the request Optional filter by domains.", "x-f5xc-description-medium": "List of domains that needs to be sent as part of the request Optional filter by domains. If absent, all domains are considered.", "x-f5xc-constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5, "minItems": 1, "uniqueItems": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "method": { "type": "string", "description": "Requested API endPoint for method.", "title": "Method of current API URL", "x-displayname": "Method", "x-ves-example": "GET", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-example": "GET", "x-validation-rules": { "ves.io.schema.rules.message.required": "true" }, "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "name": { "type": "string", "description": "Virtual Host name for current request.", "title": "Virtual Host Name", "x-displayname": "Virtual Host Name.", "x-ves-example": "Blogging-app-vhost.", "x-f5xc-example": "blogging-app-vhost", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace of the virtual host for current request.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Blogging-app.", "x-f5xc-example": "blogging-app", "x-f5xc-description-short": "Namespace of the virtual host for current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for virtual_hostAPIEndpointReq", "required_fields": [ "collapsed_url", "method" ], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for virtual_hostAPIEndpointReq\nmetadata:\n name: example\n namespace: default\nspec:\n collapsed_url: value\n method: value", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {\n \"collapsed_url\": \"value\",\n \"method\": \"value\"\n }\n}" }, "x-f5xc-cli-domain": "other" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": { "collapsed_url": "value", "method": "value" } }, "requiredFields": [ "collapsed_url", "method" ], "description": "Minimum configuration for virtual_hostAPIEndpointReq" }, "fieldMetadata": { "api_endpoint_info_request": { "type": "array", "description": "List of additional things that needs to be sent as part of the request.", "constraints": { "constraintType": "array", "category": "discovery", "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "collapsed_url": { "type": "string", "description": "Requested API endPoint for API URL.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "domains": { "type": "array", "description": "List of domains that needs to be sent as part of the request\nOptional filter by domains. If absent, all domains are considered.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5, "minItems": 1, "uniqueItems": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "method": { "type": "string", "description": "Requested API endPoint for method.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "name": { "type": "string", "description": "Virtual Host name for current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Namespace of the virtual host for current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "apiep", "type": "object", "description": "" } ] } ] }, "api-endpoint-learnt-schema": { "name": "api-endpoint-learnt-schema", "displayName": "Api Endpoint Learnt Schema", "operations": [ { "name": "create_api_endpoint_learnt_schema", "description": "GET Learnt Schema per API endpoint.", "method": "POST", "path": "/api/ml/data/namespaces/{namespace}/app_types/{app_type_name}/api_endpoint/learnt_schema", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "app_type_name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "Shape of request to GET learnt schema request for a given API endpoint.", "title": "API endpoint Learnt Schema request", "x-displayname": "Learnt Schema Request.", "x-ves-proto-message": "ves.io.schema.app_type.APIEndpointLearntSchemaReq", "properties": { "api_endpoint_info_request": { "type": "array", "description": "List of additional things that needs to be sent as part of the request.", "title": "Api Endpoint Info Request", "items": { "$ref": "#/components/schemas/app_typeApiEndpointInfoRequest" }, "x-displayname": "API Endpoint Info Request.", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.unique": "true" }, "x-validation-rules": { "ves.io.schema.rules.repeated.unique": "true" }, "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-description-short": "List of additional things that needs to be sent as part of the request.", "x-f5xc-constraints": { "constraintType": "array", "category": "discovery", "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "app_type_name": { "type": "string", "description": "App Type for current request.", "title": "App Type", "x-displayname": "App Type", "x-ves-example": "Blogging-app.", "x-f5xc-example": "blogging-app", "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "collapsed_url": { "type": "string", "description": "API endpoint for which PDFs are requested.", "title": "Discovered API URL", "x-displayname": "API URL", "x-ves-example": "Value", "x-f5xc-example": "value", "x-f5xc-description-short": "API endpoint for which PDFs are requested.", "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "method": { "type": "string", "description": "Method of API endpoint for which PDFs are requested.", "title": "Method of current API URL", "x-displayname": "Method", "x-ves-example": "Value", "x-f5xc-example": "value", "x-f5xc-description-short": "Method of API endpoint for which PDFs are requested.", "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Namespace of the App type for current request.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Shared", "x-f5xc-example": "shared", "x-f5xc-description-short": "Namespace of the App type for current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-description-short": "Shape of request to GET learnt schema request for a given API endpoint.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for app_typeAPIEndpointLearntSchemaReq", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for app_typeAPIEndpointLearntSchemaReq\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "service_mesh" }, "responseSchema": { "type": "object", "properties": { "api_specs": { "type": "object" }, "inventory_openapi_spec": { "type": "string" }, "sensitive_data": { "type": "array" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for app_typeAPIEndpointLearntSchemaReq" }, "fieldMetadata": { "api_endpoint_info_request": { "type": "array", "description": "List of additional things that needs to be sent as part of the request.", "constraints": { "constraintType": "array", "category": "discovery", "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "app_type_name": { "type": "string", "description": "App Type for current request.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "collapsed_url": { "type": "string", "description": "API endpoint for which PDFs are requested.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "method": { "type": "string", "description": "Method of API endpoint for which PDFs are requested.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Namespace of the App type for current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "api_specs", "type": "object", "description": "Discovered API Specifications based on API type for eg, OpenAPI or GraphQL schema for API endpoint." }, { "field": "discovered_schema", "type": "object", "description": "" }, { "field": "inventory_openapi_spec", "type": "string", "description": "Inventory OpenAPI spec for request API endpoint." }, { "field": "pdf_info", "type": "object", "description": "" }, { "field": "sensitive_data", "type": "array", "description": "List of sensitive data for request API endpoint." } ] }, { "name": "list_api_endpoint_learnt_schema", "description": "GET GET Learnt Schema per API endpoint.", "method": "GET", "path": "/api/ml/data/namespaces/{namespace}/virtual_hosts/{name}/api_endpoint/learnt_schema", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "collapsed_url", "in": "query", "required": false, "type": "string" }, { "name": "method", "in": "query", "required": false, "type": "string" }, { "name": "domains", "in": "query", "required": false, "type": "array" }, { "name": "api_endpoint_info_request", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "api_specs": { "type": "object" }, "inventory_openapi_spec": { "type": "string" }, "sensitive_data": { "type": "array" } } }, "responseSummary": [ { "field": "api_specs", "type": "object", "description": "Discovered API Specifications based on API type for eg, OpenAPI or GraphQL schema for API endpoint." }, { "field": "authentication", "type": "object", "description": "" }, { "field": "discovered_schema", "type": "object", "description": "" }, { "field": "inventory_openapi_spec", "type": "string", "description": "Inventory OpenAPI spec for request API endpoint." }, { "field": "pdf_info", "type": "object", "description": "" }, { "field": "sensitive_data", "type": "array", "description": "List of sensitive data for request API endpoint." } ] } ] }, "api-endpoint-pdf": { "name": "api-endpoint-pdf", "displayName": "Api Endpoint Pdf", "operations": [ { "name": "list_api_endpoint_pdf", "description": "GET PDF", "method": "GET", "path": "/api/ml/data/namespaces/{namespace}/app_types/{app_type_name}/api_endpoint/pdf", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "app_type_name", "in": "path", "required": true, "type": "string" }, { "name": "collapsed_url", "in": "query", "required": false, "type": "string" }, { "name": "method", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": {} }, "responseSummary": [ { "field": "pdf_info", "type": "object", "description": "" } ] } ] }, "api-endpoint-protection-suggestion": { "name": "api-endpoint-protection-suggestion", "displayName": "Api Endpoint Protection Suggestion", "operations": [ { "name": "create_api_endpoint_protection_suggestion", "description": "Suggest API endpoint protection rule.", "method": "POST", "path": "/api/config/namespaces/{namespace}/http_loadbalancers/{name}/api_endpoint_protection/suggestion", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "GET suggested API endpoint protection rule for a given path.", "title": "GetSuggestedAPIEndpointProtectionRuleReq", "x-displayname": "GET Suggested API endpoint protection Rule Request.", "x-ves-proto-message": "ves.io.schema.app_security.GetSuggestedAPIEndpointProtectionRuleReq", "properties": { "method": { "allOf": [ { "$ref": "#/components/schemas/schemaHttpMethod" } ], "x-f5xc-example": "GET", "x-f5xc-description-short": "HTTP method (GET, POST, PUT, DELETE, etc.).", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "HTTP load balancer for which this API endpoint protection rule applied.", "title": "Name", "x-displayname": "HTTP Load Balancer Name.", "x-ves-example": "VES-I/O-frontend.", "x-f5xc-example": "ves-io-frontend", "x-f5xc-description-short": "HTTP load balancer for which this API endpoint protection rule applied.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace of the App type for current request.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Shared", "x-f5xc-example": "shared", "x-f5xc-description-short": "Namespace of the App type for current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "path": { "type": "string", "description": "Path to apply the API endpoint protection to.", "title": "Path", "maxLength": 1024, "x-displayname": "Request Path.", "x-ves-example": "/example", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.string.max_len": "1024", "ves.io.schema.rules.string.templated_http_path": "true" }, "x-f5xc-example": "/example", "x-validation-rules": { "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.string.max_len": "1024", "ves.io.schema.rules.string.templated_http_path": "true" }, "x-f5xc-description-short": "Path to apply the API endpoint protection to.", "x-f5xc-constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1024, "minLength": 1, "pattern": "^[/a-zA-Z0-9._-]+$", "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } } }, "x-f5xc-description-short": "GET suggested API endpoint protection rule for a given path.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for app_securityGetSuggestedAPIEndpointProtectionRuleReq", "required_fields": [ "path" ], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for app_securityGetSuggestedAPIEndpointProtectionRuleReq\nmetadata:\n name: example\n namespace: default\nspec:\n path: value", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {\n \"path\": \"value\"\n }\n}" }, "x-f5xc-cli-domain": "virtual" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": { "path": "value" } }, "requiredFields": [ "path" ], "description": "Minimum configuration for app_securityGetSuggestedAPIEndpointProtectionRuleReq" }, "fieldMetadata": { "method": { "type": "string", "description": "Specifies the HTTP method used to access a resource.\n\nAny HTTP Method.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "default": "ANY" }, "name": { "type": "string", "description": "HTTP load balancer for which this API endpoint protection rule applied.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Namespace of the App type for current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "path": { "type": "string", "description": "Path to apply the API endpoint protection to.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1024, "minLength": 1, "pattern": "^[/a-zA-Z0-9._-]+$", "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } } }, "responseSummary": [ { "field": "found_existing_rule", "type": "object", "description": "" }, { "field": "rule", "type": "object", "description": "" } ] } ] }, "api-endpoint-sources-openapi-schema": { "name": "api-endpoint-sources-openapi-schema", "displayName": "Api Endpoint Sources Openapi Schema", "operations": [ { "name": "list_api_endpoint_sources_openapi_schema", "description": "GET relevant source OpenApi schema per API endpoint.", "method": "GET", "path": "/api/ml/data/namespaces/{namespace}/virtual_hosts/{name}/api_endpoint/sources_openapi_schema", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "id", "in": "query", "required": false, "type": "string" }, { "name": "discovery_source_types", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "api_specs": { "type": "object" } } }, "responseSummary": [ { "field": "api_specs", "type": "object", "description": "Discovered API Specifications based on discovery Source." } ] } ] }, "api-endpoint-unmerge-sources-openapi-schema": { "name": "api-endpoint-unmerge-sources-openapi-schema", "displayName": "Api Endpoint Unmerge Sources Openapi Schema", "operations": [ { "name": "create_api_endpoint_unmerge_sources_openapi_schema", "description": "Unmerge Source from API Endpoint.", "method": "POST", "path": "/api/ml/data/namespaces/{namespace}/virtual_hosts/{name}/api_endpoint/unmerge_sources_openapi_schema", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "Unmerge Source from endpoint.", "title": "Unmerge certain endpoint source", "x-displayname": "Unmerge Source from endpoint.", "x-ves-proto-message": "ves.io.schema.virtual_host.UnmergeAPIEPSourceOpenApiSchemaReq", "properties": { "discovery_source_type": { "allOf": [ { "$ref": "#/components/schemas/virtual_hostAPIEPDiscoverySource" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "id": { "type": "string", "description": "Endpoint ID.", "title": "id", "x-displayname": "Endpoint ID.", "x-f5xc-example": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Virtual Host name for current request.", "title": "Virtual Host Name", "x-displayname": "Virtual Host Name.", "x-ves-example": "Blogging-app-vhost.", "x-f5xc-example": "blogging-app-vhost", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace of the virtual host for current request.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Blogging-app.", "x-f5xc-example": "blogging-app", "x-f5xc-description-short": "Namespace of the virtual host for current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for virtual_hostUnmergeAPIEPSourceOpenApiSchemaReq", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for virtual_hostUnmergeAPIEPSourceOpenApiSchemaReq\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "other" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for virtual_hostUnmergeAPIEPSourceOpenApiSchemaReq" }, "fieldMetadata": { "discovery_source_type": { "type": "string", "description": "API Endpoint Discovery Source\n\nMerging all source types to one spec\nDiscovery spec from traffic data\nDiscovery spec from crawler engine\nDiscovery spec from code scan.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "default": "MERGED" }, "id": { "type": "string", "description": "Endpoint ID.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Virtual Host name for current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Namespace of the virtual host for current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } } } ] }, "api-endpoints": { "name": "api-endpoints", "displayName": "Api Endpoints", "operations": [ { "name": "list_api_endpoints", "description": "GET API endpoints.", "method": "GET", "path": "/api/ml/data/namespaces/{namespace}/app_types/{app_type_name}/api_endpoints", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "app_type_name", "in": "path", "required": true, "type": "string" }, { "name": "api_endpoint_info_request", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "apiep_list": { "type": "array" } } }, "responseSummary": [ { "field": "apiep_list", "type": "array", "description": "List of API endpoints discovered." } ] }, { "name": "create_api_endpoint_api_endpoints", "description": "GET API Endpoints.", "method": "POST", "path": "/api/ml/data/namespaces/{namespace}/http_loadbalancers/{name}/api_endpoints", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "Request shape for GET API Endpoints For Groups.", "title": "Get API Endpoints For Groups Request", "x-displayname": "GET API Endpoints For Groups.", "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.GetAPIEndpointsForGroupsReq", "properties": { "name": { "type": "string", "description": "HTTP LoadBalancer for the current request.", "title": "Http LoadBalancer Name", "x-displayname": "HTTP LoadBalancer Name.", "x-ves-example": "Blogging-app.", "x-f5xc-example": "blogging-app", "x-f5xc-description-short": "HTTP LoadBalancer for the current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace of the HTTP LoadBalancer for the current request.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Shared", "x-f5xc-example": "shared", "x-f5xc-description-short": "Namespace of the HTTP LoadBalancer for the current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-description-short": "Request shape for GET API Endpoints For Groups.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for http_loadbalancerGetAPIEndpointsForGroupsReq", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for http_loadbalancerGetAPIEndpointsForGroupsReq\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "virtual" }, "responseSchema": { "type": "object", "properties": { "api_endpoints": { "type": "array" }, "apieps_timestamp": { "type": "string" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for http_loadbalancerGetAPIEndpointsForGroupsReq" }, "fieldMetadata": { "name": { "type": "string", "description": "HTTP LoadBalancer for the current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Namespace of the HTTP LoadBalancer for the current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "api_endpoints", "type": "array", "description": "A list of API endpoints associated with the HTTP Loadbalancer." }, { "field": "apieps_timestamp", "type": "string", "description": "The API endpoints timestamp indicates most recent update of API endpoints happened\nThe API Discovery periodically updates the API endpoints list based on application's traffic." } ] } ] }, "api-endpoints-all-ns-stats": { "name": "api-endpoints-all-ns-stats", "displayName": "Api Endpoints All Ns Stats", "operations": [ { "name": "create_api_endpoints_all_ns_stat", "description": "GET API Endpoints Stats for All Namespaces.", "method": "POST", "path": "/api/ml/data/namespaces/system/api_endpoints/all_ns_stats", "dangerLevel": "medium", "parameters": [], "bodySchema": { "type": "object", "description": "Request shape for GET API Endpoints Stats All Namespaces.", "title": "Api Endpoints stats all namespaces request", "x-displayname": "API Endpoints Stats All Namespaces Request.", "x-ves-proto-message": "ves.io.schema.namespace.ApiEndpointsStatsAllNSReq", "properties": { "namespace": { "type": "string", "description": "Namespace of the App type for current request.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Shared", "x-f5xc-example": "shared", "x-f5xc-description-short": "Namespace of the App type for current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-description-short": "Request shape for GET API Endpoints Stats All Namespaces.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for namespaceApiEndpointsStatsAllNSReq", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for namespaceApiEndpointsStatsAllNSReq\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "tenant_and_identity" }, "responseSchema": { "type": "object", "properties": { "discovered": { "type": "integer" }, "inventory": { "type": "integer" }, "pii_detected": { "type": "integer" }, "shadow": { "type": "integer" }, "total_endpoints": { "type": "integer" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for namespaceApiEndpointsStatsAllNSReq" }, "fieldMetadata": { "namespace": { "type": "string", "description": "Namespace of the App type for current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "discovered", "type": "integer", "description": "Number of endpoints that categorized as discover." }, { "field": "inventory", "type": "integer", "description": "Number of endpoints that categorized as inventory." }, { "field": "pii_detected", "type": "integer", "description": "Number of endpoints that detected with pii." }, { "field": "shadow", "type": "integer", "description": "Number of endpoints that categorized as shadow." }, { "field": "total_endpoints", "type": "integer", "description": "Total endpoints." } ] } ] }, "api-endpoints-stats": { "name": "api-endpoints-stats", "displayName": "Api Endpoints Stats", "operations": [ { "name": "list_api_endpoints_stats", "description": "GET API Endpoints Stats for Virtual Host.", "method": "GET", "path": "/api/ml/data/namespaces/{namespace}/virtual_hosts/{name}/api_endpoints/stats", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "discovered": { "type": "integer" }, "inventory": { "type": "integer" }, "pii_detected": { "type": "integer" }, "shadow": { "type": "integer" }, "total_endpoints": { "type": "integer" } } }, "responseSummary": [ { "field": "discovered", "type": "integer", "description": "Number of endpoints that categorized as discover." }, { "field": "inventory", "type": "integer", "description": "Number of endpoints that categorized as inventory." }, { "field": "pii_detected", "type": "integer", "description": "Number of endpoints that detected with pii." }, { "field": "shadow", "type": "integer", "description": "Number of endpoints that categorized as shadow." }, { "field": "total_endpoints", "type": "integer", "description": "Total endpoints." } ] } ] }, "api-endpoints-summary-calls-by-response-code": { "name": "api-endpoints-summary-calls-by-response-code", "displayName": "Api Endpoints Summary Calls By Response Code", "operations": [ { "name": "create_api_endpoints_summary_calls_by_response_code", "description": "GET Total API Calls for Virtual Host.", "method": "POST", "path": "/api/ml/data/namespaces/{namespace}/virtual_hosts/{name}/api_endpoints/summary/calls_by_response_code", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "Request model for GetAPICallSummary API.", "title": "GetAPICallSummaryReq", "x-displayname": "GET API Call Summary Request.", "x-ves-proto-message": "ves.io.schema.virtual_host.GetAPICallSummaryReq", "properties": { "apiep_summary_filter": { "allOf": [ { "$ref": "#/components/schemas/virtual_hostAPIEPSummaryFilter" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Virtual Host name for current request.", "title": "Virtual Host Name", "x-displayname": "Virtual Host Name.", "x-ves-example": "Blogging-app-vhost.", "x-f5xc-example": "blogging-app-vhost", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace of the virtual host for current request.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Blogging-app.", "x-f5xc-example": "blogging-app", "x-f5xc-description-short": "Namespace of the virtual host for current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-description-short": "Request model for GetAPICallSummary API.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for virtual_hostGetAPICallSummaryReq", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for virtual_hostGetAPICallSummaryReq\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "other" }, "responseSchema": { "type": "object", "properties": { "request_count_per_rsp_code": { "type": "array" }, "total_calls": { "type": "string" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for virtual_hostGetAPICallSummaryReq" }, "fieldMetadata": { "apiep_summary_filter": { "type": "object", "description": "Filter object for summary block.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "apiep_summary_filter.apiep_category": { "type": "array", "description": "Category of API endpoints. Can be DISCOVERED, INVENTORY or SHADOW API.\nOptional filter by api_category. If absent, endpoints of all categories are considered.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "apiep_summary_filter.domains": { "type": "array", "description": "List of domains for which top API endpoints summary should be returned.\nOptional filter by domains. If absent, endpoints for all domains are considered.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5, "minItems": 1, "uniqueItems": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "apiep_summary_filter.end_time": { "type": "string", "description": "Format: unix_timestamp|RFC 3339\nFilters the APIEPs with access time < end_time.\nOptional: If not specified, then the end_time will be evaluated to start_time+2h\nIf start_time is not specified, then the end_time will be evaluated to ", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "apiep_summary_filter.start_time": { "type": "string", "description": "Format: unix_timestamp|RFC 3339\nFilters the APIEPs with access time >= start_time.\nOptional: If not specified, then the start_time will be evaluated to end_time-2h\nIf end_time is not specified, then the start_time will be evaluated to -10m.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Virtual Host name for current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Namespace of the virtual host for current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "request_count_per_rsp_code", "type": "array", "description": "Number of API calls for each category of response." }, { "field": "total_calls", "type": "string", "description": "Total API calls." } ] } ] }, "api-endpoints-summary-top-active": { "name": "api-endpoints-summary-top-active", "displayName": "Api Endpoints Summary Top Active", "operations": [ { "name": "create_api_endpoints_summary_top_active", "description": "GET Top APIs Endpoints for Virtual Host.", "method": "POST", "path": "/api/ml/data/namespaces/{namespace}/virtual_hosts/{name}/api_endpoints/summary/top_active", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "Request model for GetTopAPIEndpointsReq API.", "title": "Top attacked/active API endpoints request per virtual host", "x-displayname": "Top Attacked/Active API Endpoints per Virtual Host.", "x-ves-proto-message": "ves.io.schema.virtual_host.GetTopAPIEndpointsReq", "properties": { "apiep_summary_filter": { "allOf": [ { "$ref": "#/components/schemas/virtual_hostAPIEPSummaryFilter" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Virtual Host name for current request.", "title": "Virtual Host Name", "x-displayname": "Virtual Host Name.", "x-ves-example": "Blogging-app-vhost.", "x-f5xc-example": "blogging-app-vhost", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace of the virtual host for current request.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Blogging-app.", "x-f5xc-example": "blogging-app", "x-f5xc-description-short": "Namespace of the virtual host for current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "top_by_metric": { "allOf": [ { "$ref": "#/components/schemas/virtual_hostAPIEPActivityMetricType" } ], "x-f5xc-description-short": "Configuration parameter for top by metric.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "topk": { "type": "integer", "description": "Number of top API endpoints to return in the response.", "title": "topk", "format": "int64", "x-displayname": "Number of Top API Endpoints.", "x-ves-example": "5", "x-ves-validation-rules": { "ves.io.schema.rules.uint32.gte": "0", "ves.io.schema.rules.uint32.lte": "10" }, "x-f5xc-example": "5", "x-validation-rules": { "ves.io.schema.rules.uint32.gte": "0", "ves.io.schema.rules.uint32.lte": "10" }, "x-f5xc-description-short": "Number of top API endpoints to return in the response.", "x-f5xc-constraints": { "constraintType": "number", "category": "discovery", "minimum": 0, "maximum": 10, "deterministic": true, "metadata": { "source": "api-probed", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-description-short": "Request model for GetTopAPIEndpointsReq API.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for virtual_hostGetTopAPIEndpointsReq", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for virtual_hostGetTopAPIEndpointsReq\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "other" }, "responseSchema": { "type": "object", "properties": { "top_apieps": { "type": "array" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for virtual_hostGetTopAPIEndpointsReq" }, "fieldMetadata": { "apiep_summary_filter": { "type": "object", "description": "Filter object for summary block.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "apiep_summary_filter.apiep_category": { "type": "array", "description": "Category of API endpoints. Can be DISCOVERED, INVENTORY or SHADOW API.\nOptional filter by api_category. If absent, endpoints of all categories are considered.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "apiep_summary_filter.domains": { "type": "array", "description": "List of domains for which top API endpoints summary should be returned.\nOptional filter by domains. If absent, endpoints for all domains are considered.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5, "minItems": 1, "uniqueItems": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "apiep_summary_filter.end_time": { "type": "string", "description": "Format: unix_timestamp|RFC 3339\nFilters the APIEPs with access time < end_time.\nOptional: If not specified, then the end_time will be evaluated to start_time+2h\nIf start_time is not specified, then the end_time will be evaluated to ", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "apiep_summary_filter.start_time": { "type": "string", "description": "Format: unix_timestamp|RFC 3339\nFilters the APIEPs with access time >= start_time.\nOptional: If not specified, then the start_time will be evaluated to end_time-2h\nIf end_time is not specified, then the start_time will be evaluated to -10m.", "constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Virtual Host name for current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Namespace of the virtual host for current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "top_by_metric": { "type": "string", "description": "Activity metric calculation type per API Endpoint\n\nIf specified, API returns top attacked APIEPs summary by sec_event percentage for given virtual host.\nThe percentage is calculated as sec_events_percentage(apiep) = #sec-events(apiep)/#requests(apiep) * 100\nIf specified, API returns top active APIEPs summary by request ratio for given virtual host.\nThe percentage is calculated as request_percentage(apiep) = #requests(apiep)/#requests(all apiep) * 100.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "default": "ACTIVITY_METRIC_TYPE_SEC_EVENTS_PERCENTAGE" }, "topk": { "type": "integer", "description": "Number of top API endpoints to return in the response.", "constraints": { "constraintType": "number", "category": "discovery", "minimum": 0, "maximum": 10, "deterministic": true, "metadata": { "source": "api-probed", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "top_apieps", "type": "array", "description": "Top Attacked API endpoints." } ] } ] }, "api-endpoints-summary-top-sensitive-data": { "name": "api-endpoints-summary-top-sensitive-data", "displayName": "Api Endpoints Summary Top Sensitive Data", "operations": [ { "name": "create_api_endpoints_summary_top_sensitive_data", "description": "GET Sensitive Data Summary for Virtual Host.", "method": "POST", "path": "/api/ml/data/namespaces/{namespace}/virtual_hosts/{name}/api_endpoints/summary/top_sensitive_data", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "Request model for GetTopSensitiveDataReq API.", "title": "GetTopSensitiveDataReq", "x-displayname": "GET Top Sensitive Data Request Object.", "x-ves-proto-message": "ves.io.schema.virtual_host.GetTopSensitiveDataReq", "properties": { "apiep_category": { "type": "array", "description": "Category of API endpoints. Can be DISCOVERED, INVENTORY or SHADOW API.", "title": "APIEP Category", "items": { "$ref": "#/components/schemas/app_typeAPIEPCategory" }, "x-displayname": "APIEP Category.", "x-ves-example": "DISCOVERED.", "x-f5xc-example": "DISCOVERED", "x-f5xc-description-short": "Category of API endpoints. Can be DISCOVERED, INVENTORY or SHADOW API.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "domains": { "type": "array", "description": "List of domains for which top API endpoints summary should be returned.\nOptional filter by domains. If absent, endpoints for all domains are considered.", "title": "List of Domain", "maxItems": 5, "items": { "type": "string", "minLength": 1, "maxLength": 256 }, "x-displayname": "List of Domain.", "x-ves-example": "www.example.com.", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.items.string.max_len": "256", "ves.io.schema.rules.repeated.items.string.min_len": "1", "ves.io.schema.rules.repeated.items.string.vh_domain_or_ip": "true", "ves.io.schema.rules.repeated.max_items": "5", "ves.io.schema.rules.repeated.unique": "true" }, "x-f5xc-example": "www.example.com", "x-validation-rules": { "ves.io.schema.rules.repeated.items.string.max_len": "256", "ves.io.schema.rules.repeated.items.string.min_len": "1", "ves.io.schema.rules.repeated.items.string.vh_domain_or_ip": "true", "ves.io.schema.rules.repeated.max_items": "5", "ves.io.schema.rules.repeated.unique": "true" }, "x-f5xc-description-short": "List of domains for which top API endpoints summary should be returned. Optional filter by domains.", "x-f5xc-description-medium": "List of domains for which top API endpoints summary should be returned. Optional filter by domains. If absent, endpoints for all domains are considered.", "x-f5xc-constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5, "minItems": 1, "uniqueItems": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Virtual Host name for current request.", "title": "Virtual Host Name", "x-displayname": "Virtual Host Name.", "x-ves-example": "Blogging-app-vhost.", "x-f5xc-example": "blogging-app-vhost", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace of the virtual host for current request.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Blogging-app.", "x-f5xc-example": "blogging-app", "x-f5xc-description-short": "Namespace of the virtual host for current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "topk": { "type": "integer", "description": "Number of top API endpoints to return in the response.", "title": "topk", "format": "int64", "x-displayname": "Number of Top API Endpoints.", "x-ves-example": "5", "x-ves-validation-rules": { "ves.io.schema.rules.uint32.gte": "0", "ves.io.schema.rules.uint32.lte": "10" }, "x-f5xc-example": "5", "x-validation-rules": { "ves.io.schema.rules.uint32.gte": "0", "ves.io.schema.rules.uint32.lte": "10" }, "x-f5xc-description-short": "Number of top API endpoints to return in the response.", "x-f5xc-constraints": { "constraintType": "number", "category": "discovery", "minimum": 0, "maximum": 10, "deterministic": true, "metadata": { "source": "api-probed", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-description-short": "Request model for GetTopSensitiveDataReq API.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for virtual_hostGetTopSensitiveDataReq", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for virtual_hostGetTopSensitiveDataReq\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "other" }, "responseSchema": { "type": "object", "properties": { "top_sensitive_data": { "type": "array" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for virtual_hostGetTopSensitiveDataReq" }, "fieldMetadata": { "apiep_category": { "type": "array", "description": "Category of API endpoints. Can be DISCOVERED, INVENTORY or SHADOW API.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "domains": { "type": "array", "description": "List of domains for which top API endpoints summary should be returned.\nOptional filter by domains. If absent, endpoints for all domains are considered.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5, "minItems": 1, "uniqueItems": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Virtual Host name for current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "Namespace of the virtual host for current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "topk": { "type": "integer", "description": "Number of top API endpoints to return in the response.", "constraints": { "constraintType": "number", "category": "discovery", "minimum": 0, "maximum": 10, "deterministic": true, "metadata": { "source": "api-probed", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "top_sensitive_data", "type": "array", "description": "Top k (max 10) sensitive data types with highest APIs count." } ] } ] }, "api-endpoints-swagger-spec": { "name": "api-endpoints-swagger-spec", "displayName": "Api Endpoints Swagger Spec", "operations": [ { "name": "list_api_endpoints_swagger_spec", "description": "GET Swagger Spec for App Type.", "method": "GET", "path": "/api/ml/data/namespaces/{namespace}/app_types/{app_type_name}/api_endpoints/swagger_spec", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "app_type_name", "in": "path", "required": true, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "content_type": { "type": "string" }, "data": { "type": "string" }, "extensions": { "type": "array" } } }, "responseSummary": [ { "field": "content_type", "type": "string", "description": "The HTTP Content-Type header value specifying the content type of the body." }, { "field": "data", "type": "string", "description": "The HTTP request/response body as raw binary." }, { "field": "extensions", "type": "array", "description": "Application specific response metadata. Must be set in the first response\nfor streaming APIs." } ] } ] }, "api-group-elements": { "name": "api-group-elements", "displayName": "Api Group Elements", "operations": [ { "name": "list_api_group_elements", "description": "List API Group Element.", "method": "GET", "path": "/api/web/namespaces/{namespace}/api_group_elements", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "get_api_group_element", "description": "GET API Group Element.", "method": "GET", "path": "/api/web/namespaces/{namespace}/api_group_elements/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "status": { "type": "array" } } }, "responseSummary": [ { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "spec", "type": "object", "description": "" }, { "field": "status", "type": "array", "description": "The status reported by different services for this configuration object." }, { "field": "system_metadata", "type": "object", "description": "" } ] } ] }, "api-groups": { "name": "api-groups", "displayName": "Api Groups", "operations": [ { "name": "list_api_groups", "description": "List API Group.", "method": "GET", "path": "/api/web/namespaces/{namespace}/api_groups", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "get_api_group", "description": "GET API Group.", "method": "GET", "path": "/api/web/namespaces/{namespace}/api_groups/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "status": { "type": "array" } } }, "responseSummary": [ { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "spec", "type": "object", "description": "" }, { "field": "status", "type": "array", "description": "The status reported by different services for this configuration object." }, { "field": "system_metadata", "type": "object", "description": "" } ] } ] }, "api-inventory-api-endpoints-get-schema-updates": { "name": "api-inventory-api-endpoints-get-schema-updates", "displayName": "Api Inventory Api Endpoints Get Schema Updates", "operations": [ { "name": "create_api_inventory_api_endpoints_get_schema_update", "description": "GET API Endpoints Schema Updates.", "method": "POST", "path": "/api/ml/data/namespaces/{namespace}/http_loadbalancers/{name}/api_inventory/api_endpoints/get_schema_updates", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "Request shape for GET API Endpoints Schema Updates.", "title": "Get API Endpoints Schema Updates Request", "x-displayname": "GET API Endpoints Schema Updates Request.", "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.GetAPIEndpointsSchemaUpdatesReq", "properties": { "api_endpoints_filter": { "type": "array", "description": "The list of discovered API endpoint to GET schema for.\nNOTE: if empty, then the all API endpoints with schema changes would be returned.", "title": "API Endpoints Filter", "maxItems": 100, "items": { "$ref": "#/components/schemas/viewsApiOperation" }, "x-displayname": "API Endpoints Filter.", "x-ves-validation-rules": { "ves.io.schema.rules.repeated.max_items": "100" }, "x-validation-rules": { "ves.io.schema.rules.repeated.max_items": "100" }, "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-description-short": "The list of discovered API endpoint to GET schema for.", "x-f5xc-constraints": { "constraintType": "array", "category": "discovery", "maxItems": 100, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "The name of the HTTP Loadbalancer for the current request.", "title": "Name", "x-displayname": "Name", "x-ves-example": "Name", "x-f5xc-example": "name", "x-f5xc-description-short": "The name of the HTTP Loadbalancer for the current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "The namespace of the HTTP Loadbalancer for the current request.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Shared", "x-f5xc-example": "shared", "x-f5xc-description-short": "The namespace of the HTTP Loadbalancer for the current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "query_type": { "allOf": [ { "$ref": "#/components/schemas/http_loadbalancerApiInventorySchemaQueryType" } ], "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-description-short": "Request shape for GET API Endpoints Schema Updates.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for http_loadbalancerGetAPIEndpointsSchemaUpdatesReq", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for http_loadbalancerGetAPIEndpointsSchemaUpdatesReq\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "virtual" }, "responseSchema": { "type": "object", "properties": { "api_endpoints_current_schemas": { "type": "array" }, "api_endpoints_updated_schemas": { "type": "array" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for http_loadbalancerGetAPIEndpointsSchemaUpdatesReq" }, "fieldMetadata": { "api_endpoints_filter": { "type": "array", "description": "The list of discovered API endpoint to GET schema for.\nNOTE: if empty, then the all API endpoints with schema changes would be returned.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 100, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "The name of the HTTP Loadbalancer for the current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "The namespace of the HTTP Loadbalancer for the current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "query_type": { "type": "string", "description": "API Inventory Schema Query Type\n\n- API_INVENTORY_SCHEMA_FULL_RESPONSE: Full Response\n\n- API_INVENTORY_SCHEMA_CURRENT: Current Schema\n\n- API_INVENTORY_SCHEMA_UPDATED: Updated Schema.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false }, "default": "API_INVENTORY_SCHEMA_FULL_RESPONSE" } }, "responseSummary": [ { "field": "api_endpoints_current_schemas", "type": "array", "description": "The list of discovered API endpoints with current schemas." }, { "field": "api_endpoints_updated_schemas", "type": "array", "description": "The list of API Inventory API endpoints with updated schemas." } ] } ] }, "api-inventory-api-endpoints-update-schemas": { "name": "api-inventory-api-endpoints-update-schemas", "displayName": "Api Inventory Api Endpoints Update Schemas", "operations": [ { "name": "create_api_inventory_api_endpoints_update_schema", "description": "Update API Endpoints Schemas.", "method": "POST", "path": "/api/ml/data/namespaces/{namespace}/http_loadbalancers/{name}/api_inventory/api_endpoints/update_schemas", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "Request shape for Update API Endpoints Schemas.", "title": "Update API Endpoints Schemas Request", "x-displayname": "Update API Endpoints Schemas Request.", "x-ves-proto-message": "ves.io.schema.views.http_loadbalancer.UpdateAPIEndpointsSchemasReq", "properties": { "api_endpoints_schema_updates": { "type": "array", "description": "The list of API Inventory API endpoints schema updates.", "title": "API Endpoints Schema Updates", "minItems": 1, "maxItems": 100, "items": { "$ref": "#/components/schemas/viewsApiEndpointWithSchema" }, "x-displayname": "API Endpoints Schema Updates.", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.repeated.max_items": "100", "ves.io.schema.rules.repeated.min_items": "1" }, "x-validation-rules": { "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.repeated.max_items": "100", "ves.io.schema.rules.repeated.min_items": "1" }, "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-description-short": "The list of API Inventory API endpoints schema updates.", "x-f5xc-constraints": { "constraintType": "array", "category": "discovery", "minItems": 1, "maxItems": 100, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "name": { "type": "string", "description": "The name of the HTTP Loadbalancer for the current request.", "title": "Name", "x-displayname": "Name", "x-ves-example": "Name", "x-f5xc-example": "name", "x-f5xc-description-short": "The name of the HTTP Loadbalancer for the current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "The namespace of the HTTP Loadbalancer for the current request.", "title": "Namespace", "x-displayname": "Namespace", "x-ves-example": "Shared", "x-f5xc-example": "shared", "x-f5xc-description-short": "The namespace of the HTTP Loadbalancer for the current request.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-description-short": "Request shape for Update API Endpoints Schemas.", "x-f5xc-minimum-configuration": { "description": "Minimum configuration for http_loadbalancerUpdateAPIEndpointsSchemasReq", "required_fields": [ "api_endpoints_schema_updates" ], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for http_loadbalancerUpdateAPIEndpointsSchemasReq\nmetadata:\n name: example\n namespace: default\nspec:\n api_endpoints_schema_updates: value", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {\n \"api_endpoints_schema_updates\": \"value\"\n }\n}" }, "x-f5xc-cli-domain": "virtual" }, "responseSchema": { "type": "object", "properties": { "updated_api_endpoints": { "type": "array" } } }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": { "api_endpoints_schema_updates": "value" } }, "requiredFields": [ "api_endpoints_schema_updates" ], "description": "Minimum configuration for http_loadbalancerUpdateAPIEndpointsSchemasReq" }, "fieldMetadata": { "api_endpoints_schema_updates": { "type": "array", "description": "The list of API Inventory API endpoints schema updates.", "constraints": { "constraintType": "array", "category": "discovery", "minItems": 1, "maxItems": 100, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "name": { "type": "string", "description": "The name of the HTTP Loadbalancer for the current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "namespace": { "type": "string", "description": "The namespace of the HTTP Loadbalancer for the current request.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "responseSummary": [ { "field": "updated_api_endpoints", "type": "array", "description": "The list of API endpoints which were successfully proceeded by the API Inventory request." } ] } ] }, "api-testings": { "name": "api-testings", "displayName": "Api Testings", "operations": [ { "name": "create_api_testing", "description": "Create API Testing.", "method": "POST", "path": "/api/config/namespaces/{namespace}/api_testings", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Create' RPC.", "title": "CreateRequest is used to create an instance of api_testing", "x-displayname": "Create Request.", "x-ves-proto-message": "ves.io.schema.api_sec.api_testing.CreateRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectCreateMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/api_testingCreateSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for api_testingCreateRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for api_testingCreateRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "api" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for api_testingCreateRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.custom_header_value": { "type": "string", "description": "Add x-F5-API-testing-identifier header value to prevent security flags on API testing traffic.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 128, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.domains": { "type": "array", "description": "Add and configure testing domains and credentials.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 32, "minItems": 1, "uniqueItems": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.every_day": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.every_month": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.every_week": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "spec.frequency_choice": [ "every_day", "every_month", "every_week" ] }, "responseSummary": [ { "field": "metadata", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "system_metadata", "type": "object", "description": "" } ] }, { "name": "replace_api_testing", "description": "Replace API testing.", "method": "PUT", "path": "/api/config/namespaces/{namespace}/api_testings/{name}", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Replace' RPC.", "title": "ReplaceRequest is used to replace contents of a api_testing", "x-displayname": "Replace Request.", "x-ves-proto-message": "ves.io.schema.api_sec.api_testing.ReplaceRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectReplaceMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/api_testingReplaceSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "resource_version": { "type": "string", "x-f5xc-concurrency-token": { "server_assigned": true, "echo_on_operations": [ "replace" ] } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for api_testingReplaceRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for api_testingReplaceRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "api" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for api_testingReplaceRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.custom_header_value": { "type": "string", "description": "Add x-F5-API-testing-identifier header value to prevent security flags on API testing traffic.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 128, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.domains": { "type": "array", "description": "Add and configure testing domains and credentials.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 32, "minItems": 1, "uniqueItems": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.every_day": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.every_month": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.every_week": { "type": "object", "description": "This can be used for messages where no values are needed.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "spec.frequency_choice": [ "every_day", "every_month", "every_week" ] } }, { "name": "list_api_testings", "description": "List API Testing.", "method": "GET", "path": "/api/config/namespaces/{namespace}/api_testings", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "delete_api_testing", "description": "DELETE API Testing.", "method": "DELETE", "path": "/api/config/namespaces/{namespace}/api_testings/{name}", "dangerLevel": "high", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'DELETE' RPC.", "title": "DeleteRequest is used to delete a api_testing", "x-displayname": "DELETE Request.", "x-ves-proto-message": "ves.io.schema.api_sec.api_testing.DeleteRequest", "properties": { "fail_if_referred": { "type": "boolean", "description": "Fail the DELETE operation if this object is being referred by other objects.", "title": "fail_if_referred", "format": "boolean", "x-displayname": "Fail-If-Referred.", "x-f5xc-description-short": "Fail the DELETE operation if this object is being referred by other objects.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Name of the configuration object.", "title": "name", "x-displayname": "Name", "x-ves-example": "Name", "x-f5xc-example": "name", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the configuration object is present.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-description-short": "Namespace in which the configuration object is present.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for api_testingDeleteRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for api_testingDeleteRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "api" } }, { "name": "get_api_testing", "description": "GET API testing.", "method": "GET", "path": "/api/config/namespaces/{namespace}/api_testings/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "status": { "type": "array" }, "resource_version": { "type": "string" } } }, "responseSummary": [ { "field": "create_form", "type": "object", "description": "" }, { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "replace_form", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "status", "type": "array", "description": "The status reported by different services for this configuration object." }, { "field": "system_metadata", "type": "object", "description": "" }, { "field": "resource_version", "type": "string", "description": "" } ] } ] }, "app-api-groups": { "name": "app-api-groups", "displayName": "App Api Groups", "operations": [ { "name": "create_app_api_group", "description": "Create API Group.", "method": "POST", "path": "/api/config/namespaces/{namespace}/app_api_groups", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Create' RPC.", "title": "CreateRequest is used to create an instance of app_api_group", "x-displayname": "Create Request.", "x-ves-proto-message": "ves.io.schema.views.app_api_group.CreateRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectCreateMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/viewsapp_api_groupCreateSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for app_api_groupCreateRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for app_api_groupCreateRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "api" }, "responseSchema": { "type": "object", "properties": {} }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for app_api_groupCreateRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectCreateMetaType is metadata that can be specified in Create request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Create app_api_group creates a new object in the storage backend for metadata.namespace.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.bigip_virtual_server": { "type": "object", "description": "Set the scope of the API Group to a specific BIG-IP Virtual Server.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.bigip_virtual_server.bigip_virtual_server": { "type": "object", "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.cdn_loadbalancer": { "type": "object", "description": "Set the scope of the API Group to a specific CDN Loadbalancer.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.cdn_loadbalancer.cdn_loadbalancer": { "type": "object", "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.elements": { "type": "array", "description": "List of API group elements with methods and path regex for matching requests.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5000, "minItems": 0, "uniqueItems": false, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.http_loadbalancer": { "type": "object", "description": "Set the scope of the API Group to a specific HTTP Loadbalancer.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.http_loadbalancer.http_loadbalancer": { "type": "object", "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "spec.scope_choice": [ "bigip_virtual_server", "cdn_loadbalancer", "http_loadbalancer" ] }, "responseSummary": [ { "field": "metadata", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "system_metadata", "type": "object", "description": "" } ] }, { "name": "replace_app_api_group", "description": "Replace API Group.", "method": "PUT", "path": "/api/config/namespaces/{namespace}/app_api_groups/{name}", "dangerLevel": "medium", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'Replace' RPC.", "title": "ReplaceRequest is used to replace contents of a app_api_group", "x-displayname": "Replace Request.", "x-ves-proto-message": "ves.io.schema.views.app_api_group.ReplaceRequest", "properties": { "metadata": { "allOf": [ { "$ref": "#/components/schemas/schemaObjectReplaceMetaType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "allOf": [ { "$ref": "#/components/schemas/viewsapp_api_groupReplaceSpecType" } ], "x-f5xc-example": "{\"key\": \"value\"}", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "resource_version": { "type": "string", "x-f5xc-concurrency-token": { "server_assigned": true, "echo_on_operations": [ "replace" ] } } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for app_api_groupReplaceRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for app_api_groupReplaceRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "api" }, "responseSchema": { "type": "object" }, "minimumPayload": { "json": { "metadata": { "name": "example", "namespace": "default" }, "spec": {} }, "requiredFields": [], "description": "Minimum configuration for app_api_groupReplaceRequest" }, "fieldMetadata": { "metadata": { "type": "object", "description": "ObjectReplaceMetaType is metadata that can be specified in Replace request of an object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.annotations": { "type": "object", "description": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.description": { "type": "string", "description": "Human readable description for the object.", "constraints": { "constraintType": "string", "category": "discovery", "maxLength": 1200, "minLength": 0, "characterSet": { "description": "Free text with UTF-8 support" }, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "byteLength": { "max": 1200 }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.disable": { "type": "boolean", "description": "A value of true will administratively disable the object.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.labels": { "type": "object", "description": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects as chosen by the user. Values specified here will be used\nby selector expression.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "metadata.name": { "type": "string", "description": "This is the name of configuration object. It has to be unique within the namespace.\nIt can only be specified during create API and cannot be changed during replace API.\nThe value of name has to follow DNS-1035 format.", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "metadata.namespace": { "type": "string", "description": "This defines the workspace within which each the configuration object is to be created.\nMust be a DNS_LABEL format. For a namespace object itself, namespace value will be \"\"", "constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec": { "type": "object", "description": "Replace app_api_group replaces an existing object in the storage backend for metadata.namespace.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.bigip_virtual_server": { "type": "object", "description": "Set the scope of the API Group to a specific BIG-IP Virtual Server.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.bigip_virtual_server.bigip_virtual_server": { "type": "object", "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.cdn_loadbalancer": { "type": "object", "description": "Set the scope of the API Group to a specific CDN Loadbalancer.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.cdn_loadbalancer.cdn_loadbalancer": { "type": "object", "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.elements": { "type": "array", "description": "List of API group elements with methods and path regex for matching requests.", "constraints": { "constraintType": "array", "category": "discovery", "maxItems": 5000, "minItems": 0, "uniqueItems": false, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "required_for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "spec.http_loadbalancer": { "type": "object", "description": "Set the scope of the API Group to a specific HTTP Loadbalancer.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "spec.http_loadbalancer.http_loadbalancer": { "type": "object", "description": "This type establishes a direct reference from one object(the referrer) to another(the referred).\nSuch a reference is in form of tenant/namespace/name.", "required_for": { "minimum_config": false, "create": false, "update": false, "read": false } } }, "oneOfVariants": { "spec.scope_choice": [ "bigip_virtual_server", "cdn_loadbalancer", "http_loadbalancer" ] } }, { "name": "list_app_api_groups", "description": "List App API Group.", "method": "GET", "path": "/api/config/namespaces/{namespace}/app_api_groups", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "label_filter", "in": "query", "required": false, "type": "string" }, { "name": "report_fields", "in": "query", "required": false, "type": "array" }, { "name": "report_status_fields", "in": "query", "required": false, "type": "array" } ], "responseSchema": { "type": "object", "properties": { "errors": { "type": "array" }, "items": { "type": "array" } } }, "responseSummary": [ { "field": "errors", "type": "array", "description": "Errors(if any) while listing items from collection." }, { "field": "items", "type": "array", "description": "Items represents the collection in response." } ] }, { "name": "delete_app_api_group", "description": "DELETE App API Group.", "method": "DELETE", "path": "/api/config/namespaces/{namespace}/app_api_groups/{name}", "dangerLevel": "high", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" } ], "bodySchema": { "type": "object", "description": "This is the input message of the 'DELETE' RPC.", "title": "DeleteRequest is used to delete a app_api_group", "x-displayname": "DELETE Request.", "x-ves-proto-message": "ves.io.schema.views.app_api_group.DeleteRequest", "properties": { "fail_if_referred": { "type": "boolean", "description": "Fail the DELETE operation if this object is being referred by other objects.", "title": "fail_if_referred", "format": "boolean", "x-displayname": "Fail-If-Referred.", "x-f5xc-description-short": "Fail the DELETE operation if this object is being referred by other objects.", "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "name": { "type": "string", "description": "Name of the configuration object.", "title": "name", "x-displayname": "Name", "x-ves-example": "Name", "x-f5xc-example": "name", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter, may contain lowercase alphanumeric and hyphens, must end with alphanumeric", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" }, "namespace": { "type": "string", "description": "Namespace in which the configuration object is present.", "title": "namespace", "x-displayname": "Namespace", "x-ves-example": "Ns1", "x-f5xc-example": "ns1", "x-f5xc-description-short": "Namespace in which the configuration object is present.", "x-f5xc-constraints": { "constraintType": "string", "category": "naming", "maxLength": 63, "minLength": 1, "pattern": "^[a-z]([-a-z0-9]*[a-z0-9])?$", "characterSet": { "allowed": "[a-z0-9-]", "restricted": "[^a-z0-9-]", "required": "[a-z0-9]", "description": "Lowercase letter start, alphanumeric with hyphens, alphanumeric end" }, "format": "dns-label", "formatDescription": "DNS-1035 label: must start with a lowercase letter", "validation": { "rfc": "RFC 1035", "standard": "DNS-1035 label (alpha-first)" }, "metadata": { "source": "inferred", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" }, "deterministic": true }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false }, "x-reconciled-from-discovery": true, "x-reconciled-at": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-minimum-configuration": { "description": "Minimum configuration for app_api_groupDeleteRequest", "required_fields": [], "mutually_exclusive_groups": [], "example_yaml": "# Minimal example for app_api_groupDeleteRequest\nmetadata:\n name: example\n namespace: default\nspec: {}", "example_json": "{\n \"metadata\": {\n \"name\": \"example\",\n \"namespace\": \"default\"\n },\n \"spec\": {}\n}" }, "x-f5xc-cli-domain": "api" } }, { "name": "get_app_api_group", "description": "GET API Group.", "method": "GET", "path": "/api/config/namespaces/{namespace}/app_api_groups/{name}", "dangerLevel": "low", "parameters": [ { "name": "namespace", "in": "path", "required": true, "type": "string", "default": "$F5XC_NAMESPACE" }, { "name": "name", "in": "path", "required": true, "type": "string" }, { "name": "response_format", "in": "query", "required": false, "type": "string" } ], "responseSchema": { "type": "object", "properties": { "deleted_referred_objects": { "type": "array" }, "disabled_referred_objects": { "type": "array" }, "referring_objects": { "type": "array" }, "status": { "type": "array" }, "resource_version": { "type": "string" } } }, "responseSummary": [ { "field": "create_form", "type": "object", "description": "" }, { "field": "deleted_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "disabled_referred_objects", "type": "array", "description": "The set of deleted objects that are referred by this object." }, { "field": "metadata", "type": "object", "description": "" }, { "field": "referring_objects", "type": "array", "description": "The set of objects that are referring to this object in their spec." }, { "field": "replace_form", "type": "object", "description": "" }, { "field": "spec", "type": "object", "description": "" }, { "field": "status", "type": "array", "description": "The status reported by different services for this configuration object." }, { "field": "system_metadata", "type": "object", "description": "" }, { "field": "resource_version", "type": "string", "description": "" } ] } ] }, "app-firewall-all-ns-metrics": { "name": "app-firewall-all-ns-metrics", "displayName": "App Firewall All Ns Metrics", "operations": [ { "name": "create_app_firewall_all_ns_metric", "description": "MetricsAllNamespaces.", "method": "POST", "path": "/api/data/namespaces/system/app_firewall/all_ns_metrics", "dangerLevel": "medium", "parameters": [], "bodySchema": { "type": "object", "description": "Request to GET the metrics for App Firewall.", "title": "Metrics Request", "x-displayname": "Metrics Request.", "x-ves-proto-message": "ves.io.schema.app_firewall.MetricsRequest", "properties": { "end_time": { "type": "string", "description": "End time of metric collection from which data will be considered to build graph.\nFormat: unix_timestamp|RFC 3339\n\nOptional: If not specified, then the end_time will be evaluated to start_time+10m\nIf start_time is not specified, then the end_time will be evaluated to ", "title": "End time", "x-displayname": "End Time", "x-ves-example": "1570197600.", "x-ves-validation-rules": { "ves.io.schema.rules.string.query_time": "true" }, "x-f5xc-example": "1570197600", "x-validation-rules": { "ves.io.schema.rules.string.query_time": "true" }, "x-f5xc-description-short": "End time of metric collection from which data will be considered to build graph.", "x-f5xc-description-medium": "End time of metric collection from which data will be considered to build graph. Format: unix_timestamp|RFC 3339 Optional: If not specified, then the end_time will be evaluated to start_time+10m If start_time is not specified, then the end_time will be evaluated to .", "x-f5xc-constraints": { "constraintType": "string", "category": "general", "maxLength": 1024, "metadata": { "source": "inferred", "confidence": 0.85, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": false, "create": false, "update": false, "read": false } }, "field_selector": { "type": "array", "description": "Select fields to be returned in the response.\nOne or more fields in {BOT_DETECTION, ATTACKED_REQUESTS, BLOCKED_REQUESTS, TOTAL_REQUESTS} can be specified.", "title": "Field Selector", "minItems": 1, "maxItems": 8, "items": { "$ref": "#/components/schemas/schemaapp_firewallMetricType" }, "x-displayname": "Field Selector.", "x-ves-required": "true", "x-ves-validation-rules": { "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.repeated.max_items": "8", "ves.io.schema.rules.repeated.min_items": "1", "ves.io.schema.rules.repeated.unique": "true" }, "x-validation-rules": { "ves.io.schema.rules.message.required": "true", "ves.io.schema.rules.repeated.max_items": "8", "ves.io.schema.rules.repeated.min_items": "1", "ves.io.schema.rules.repeated.unique": "true" }, "x-f5xc-description-short": "Select fields to be returned in the response.", "x-f5xc-description-medium": "Select fields to be returned in the response. One or more fields in {BOT_DETECTION, ATTACKED_REQUESTS, BLOCKED_REQUESTS, TOTAL_REQUESTS} can be specified.", "x-f5xc-constraints": { "constraintType": "array", "category": "discovery", "minItems": 1, "maxItems": 8, "uniqueItems": true, "deterministic": true, "metadata": { "source": "discovery", "confidence": 0.99, "validatedAt": "2026-08-20T09:12:47+00:00" } }, "x-f5xc-required-for": { "minimum_config": true, "create": true, "update": false, "read": false } }, "filter": { "type": "string", "description": "Filter is used to specify the list of matchers\nsyntax for filter := {[]}\n :=