Download OpenAPI specification:Download
Unified API for F5 Insight monitoring and analytics platform including device management, system operations, and AI-powered insights
JWT ACCESS TOKEN for authenticated requests.
IMPORTANT:
Example: Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
| Security Scheme Type | HTTP |
|---|---|
| HTTP Authorization Scheme | bearer |
| Bearer format | "JWT" |
| username required | string Username for authentication |
| password required | string <password> User password |
Login successful
Invalid request
Invalid credentials
Internal server error
API base path
System Manager API
{- "username": "admin",
- "password": "password123"
}{- "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
- "token_type": "Bearer",
- "expires_in": 900
}Refreshes the access token using the refresh token stored in httpOnly cookie. No request body required - refresh token is read from cookie.
Token refreshed successfully
Invalid or expired refresh token
Internal server error
API base path
System Manager API
{- "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
- "token_type": "Bearer",
- "expires_in": 900
}Logs out the user by revoking the refresh token stored in httpOnly cookie. No request body required - refresh token is read from cookie.
Logout successful
Internal server error
API base path
System Manager API
{- "message": "Operation successful"
}Logged out from all devices successfully
Unauthorized
Internal server error
API base path
System Manager API
{- "message": "Operation successful"
}Current AI provider configuration
No configuration found
Internal server error
API base path
System Manager API
{- "provider_name": "string",
- "base_url": "string",
- "model": "string",
- "ca": "string",
- "skip_tls_verify": true
}| provider_name required | string AI provider name (e.g., openai, anthropic, local) |
| api_token | string API token for the provider. Required for 'openai' and 'claude' providers, optional for 'local' provider. |
| base_url | string Base URL for the provider. Required for 'local' provider, optional for 'openai' and 'claude'. |
| model | string Model name to use. Required for 'local' provider, optional for others. |
| ca | string <uuid> Optional CA certificate UUID from trust store for custom SSL/TLS connections |
| skip_tls_verify | boolean Indicates if TLS verification should be skipped for this provider |
Configuration saved successfully
Validation error
Internal server error
API base path
System Manager API
{- "provider_name": "string",
- "api_token": "string",
- "base_url": "string",
- "model": "string",
- "ca": "string",
- "skip_tls_verify": true
}{- "status": "validation_success"
}Configuration deleted successfully
Configuration not found
Internal server error
API base path
System Manager API
{- "status": "validation_success"
}Current AIDF configuration
No configuration found
Internal server error
API base path
System Manager API
{- "endpoint": "string",
- "tenant_id": "string",
- "data_types": [
- "logs"
]
}| endpoint required | string AIDF endpoint URL |
| tenant_id required | string Tenant ID |
| tenant_token required | string Tenant authentication token |
| data_types | Array of strings non-empty Default: ["logs","metrics"] Items Enum: "logs" "metrics" Data types to send to AIDF (logs, metrics, or both). Defaults to ["logs", "metrics"] if not specified. Cannot be an empty array. |
Configuration saved successfully
Validation error
Internal server error
API base path
System Manager API
{- "endpoint": "string",
- "tenant_id": "string",
- "tenant_token": "string",
- "data_types": [
- "logs",
- "metrics"
]
}{- "status": "validation_success"
}Configuration deleted successfully
Configuration not found
Internal server error
API base path
System Manager API
{- "status": "validation_success"
}Fetches security insights from AIDF including alerts, scoring, and device findings. Requires AIDF to be configured. Returns sample data if AIDF endpoint fails.
AIDF insights retrieved successfully (flattened feed items)
Bad request or AIDF not configured
Internal server error
API base path
System Manager API
[- {
- "id": "sec-001",
- "title": "Content Security Policy Missing",
- "message": "The Content-Security-Policy header is not configured for host legacy-app.corp.example.com",
- "severity": "medium",
- "category": "Header",
- "deviceName": "bigip-nyc-01.example.com",
- "host": "legacy-app.corp.example.com",
- "virtualServer": "/Common/vs_web_80",
- "firstDetected": "2026-02-02T08:09:00Z"
}
]Fetches workload classification insights from AIDF including application discovery, traffic analysis, and compliance indicators. Requires AIDF to be configured. Returns sample data if AIDF endpoint fails.
AIDF classifications retrieved successfully (flattened feed items)
Bad request or AIDF not configured
Internal server error
API base path
System Manager API
[- {
- "id": "app-001",
- "title": "E-Commerce Application - Payment Gateway",
- "description": "High-value e-commerce application with PCI-DSS compliance requirements",
- "severity": "high",
- "status": "open",
- "category": "Application Discovery",
- "deviceName": "bigip-nyc-01.example.com",
- "host": "checkout.retailstore.example.com",
- "virtualServer": "/Common/vs_ecommerce_443",
- "firstDetected": "2026-01-15T09:15:00Z",
- "confidence": 0.97,
- "appCategory": "E-Commerce",
- "appSubcategory": "Payment Processing",
- "matchedRule": "Payment Gateway with PCI Compliance Indicators"
}
]| provider_name required | string AI provider name (e.g., openai, claude, local) |
| api_token | string API token for the provider. Required for 'openai' and 'claude' providers, optional for 'local' provider. |
| base_url | string Base URL for the provider. Required for 'local' provider, optional for 'openai' and 'claude'. |
| model | string Model name to use. Required for 'local' provider, optional for others. |
| ca | string <uuid> Optional CA certificate UUID from trust store |
| skip_tls_verify | boolean Indicates if TLS verification should be skipped for this provider |
Validation successful
Validation failed
Internal server error
API base path
System Manager API
{- "provider_name": "string",
- "api_token": "string",
- "base_url": "string",
- "model": "string",
- "ca": "string",
- "skip_tls_verify": true
}{- "status": "validation_success",
- "error": "string"
}| endpoint required | string |
| tenant_id required | string |
| tenant_token required | string |
Validation successful
Validation failed
Internal server error
API base path
System Manager API
{- "endpoint": "string",
- "tenant_id": "string",
- "tenant_token": "string"
}{- "status": "validation_success",
- "error": "string"
}Returns the health status of the license service including activation status, storage metrics, and license information
License service is healthy
Service unavailable
API base path
System Manager API
{- "status": {
- "health": "green",
- "message": "Activation service healthy",
- "errors": [ ]
}, - "license": {
- "activation_timestamp": "2025-12-03T07:18:11Z",
- "license_sub_status": "Active",
- "status": "Active",
- "expiry_date": "2026-11-29T00:00:32Z",
- "telemetry_status": "Enabled",
- "telemetry_last_verified": "2025-12-10T05:12:45Z",
- "telemetry_error": "if any error while sending telemetry",
- "mode_of_operation": "connected"
}, - "storage": {
- "used_percent": 15.7,
- "used_gb": 500,
- "entitled_gb": 300
}
}Activates the license for the service and returns activation status and details
| jwt required | string JWT token |
| customId | string Custom ID |
| modeOfOperation required | string Enum: "connected" "disconnected" Mode of operation |
License activated successfully
Invalid activation request
Unauthorized activation attempt
Internal server error
API base path
System Manager API
{- "jwt": "your-jwt-token",
- "customId": "string",
- "modeOfOperation": "connected"
}{- "status": "success",
- "message": "License activated successfully",
- "license": {
- "activation_timestamp": "2025-12-03T07:18:11Z",
- "license_sub_status": "Active",
- "status": "Active",
- "expiry_date": "2026-11-29T00:00:32Z",
- "telemetry_status": "Enabled",
- "telemetry_last_verified": "2025-12-10T05:12:45Z",
- "telemetry_error": "if any error while sending telemetry",
- "mode_of_operation": "connected"
}
}Deactivates the license for the service and returns deactivation status
License deactivated successfully
Invalid deactivation request
Unauthorized deactivation attempt
Internal server error
API base path
System Manager API
{- "status": "success",
- "message": "License deactivated successfully",
- "digitalAssetId": "string",
- "licenseStatus": "Terminated",
- "deactivatedAt": "2026-05-19T11:05:07Z"
}Downloads the license report in disconnected mode (base64 encoded)
License report downloaded successfully
Operation not allowed in connected mode
Internal server error
API base path
System Manager API
{- "report": "eyJyZXBvcnROYW1lIjoibXktcmVwb3J0IiwidGVsZW1ldHJ5UmVjb3JkcyI6W119"
}Verifies a signed license report acknowledgment from F5 TEEM in disconnected mode
| manifest required | string Base64 encoded signed report acknowledgment from F5 TEEM |
Report verification initiated successfully
Invalid request body
Operation not allowed in connected mode
Internal server error
API base path
System Manager API
{- "manifest": "eyJzaWduZWRBY2siOiJ0ZXN0In0="
}{- "message": "Operation successful"
}Retrieves license entitlements from llm sdk
License entitlements retrieved successfully
Internal server error
API base path
System Manager API
{- "entitlements": { },
- "status": "success"
}Add a new data center to F5 Insights fleet.
Details of the data center to be added.
| id | string <uuid> Unique identifier for the data center |
| name required | string <= 255 characters Name of the Data Center. |
Data center added successfully.
Validation error.
Internal server error.
API base path
System Manager API
{- "id": "string",
- "name": "string"
}{- "status": 0,
- "message": "string",
- "code": "string",
- "category": "string",
- "help": "string"
}Retrieve all Data Centers.
List of all data centers.
Validation error.
Internal server error.
API base path
System Manager API
{- "data_centers": [
- {
- "id": "string",
- "name": "string"
}
]
}Delete a specific data center by its ID.
| id required | string <uuid> Unique identifier of the data center to delete. |
Data center deleted successfully.
Validation error.
Data center not found.
Cannot delete data center with associated devices.
Internal server error.
API base path
System Manager API
{- "status": 0,
- "message": "string",
- "code": "string",
- "category": "string",
- "help": "string"
}Retrieve all data centers with their registered devices.
List of all data centers with their devices.
Internal server error.
API base path
System Manager API
{- "data_centers": [
- {
- "id": "string",
- "name": "string",
- "devices": [
- {
- "retention": "string",
- "port": 1,
- "collection_interval": 1,
- "tls_enabled": false,
- "ca": "string",
- "modules": {
- "apm": false,
- "cgnat": false,
- "dns": false,
- "dos": false,
- "firewall": false,
- "gtm": false,
- "policy_api_protection": false,
- "policy_asm": false,
- "policy_firewall": false,
- "policy_ip_intelligence": false,
- "policy_nat": false,
- "profile_dos": false
}, - "id": "string",
- "alias_name": "string",
- "description": "string",
- "username": "string",
- "password": "string",
- "data_center": "string",
- "endpoint": "string",
- "deviceName": "string"
}
], - "device_count": 0
}
], - "total_data_centers": 0,
- "total_devices": 0
}Save or update global settings for BIG-IP devices.
Global settings configuration.
| retention | string (Retention) ^P(\d+Y)?(\d+M)?(\d+D)?(T(\d+H)?(\d+M)?(\d+S)?)?$ ISO 8601 duration (e.g., P1Y for 1 year, P30D for 30 days).Supported units are Y (years), M (months), D (days), H (hours), M (minutes), S (seconds). Internally converted and rounded up to whole days. Maximum allowed retention is 1 year (P1Y). |
| port | integer [ 1 .. 65535 ] |
| collection_interval | integer >= 1 Collection interval in seconds |
| tls_enabled | boolean Default: false |
| ca | string <uuid> CA certificate UUID from trust store |
| modules | object |
Global settings saved successfully.
Validation error.
Internal server error.
API base path
System Manager API
{- "retention": "string",
- "port": 1,
- "collection_interval": 1,
- "tls_enabled": false,
- "ca": "string",
- "modules": {
- "apm": false,
- "cgnat": false,
- "dns": false,
- "dos": false,
- "firewall": false,
- "gtm": false,
- "policy_api_protection": false,
- "policy_asm": false,
- "policy_firewall": false,
- "policy_ip_intelligence": false,
- "policy_nat": false,
- "profile_dos": false
}
}{- "status": 0,
- "message": "string",
- "code": "string",
- "category": "string",
- "help": "string"
}Retrieve current global settings.
Global settings fetched successfully.
API base path
System Manager API
{- "retention": "string",
- "port": 1,
- "collection_interval": 1,
- "tls_enabled": false,
- "ca": "string",
- "modules": {
- "apm": false,
- "cgnat": false,
- "dns": false,
- "dos": false,
- "firewall": false,
- "gtm": false,
- "policy_api_protection": false,
- "policy_asm": false,
- "policy_firewall": false,
- "policy_ip_intelligence": false,
- "policy_nat": false,
- "profile_dos": false
}
}certificate for TLS connections.
Certificate details and content.
| name required | string <= 255 characters Name of the certificate |
| description | string Description of the certificate |
| certificate_content required | string PEM encoded certificate content |
Certificate uploaded successfully.
Validation error.
Internal server error.
API base path
System Manager API
{- "name": "string",
- "description": "string",
- "certificate_content": "string"
}{- "id": "string",
- "name": "string",
- "description": "string",
- "created_at": "2026-05-19T11:05:07Z"
}Retrieve all certificates from trust store.
List of certificates.
Internal server error.
API base path
System Manager API
{- "trust_stores": [
- {
- "id": "string",
- "name": "string",
- "description": "string",
- "certificate_content": "string",
- "created_at": "2026-05-19T11:05:07Z",
- "last_modified": "2026-05-19T11:05:07Z"
}
]
}Retrieve a specific certificate by ID from trust store.
| id required | string <uuid> Certificate ID |
Certificate details.
Certificate not found.
Internal server error.
API base path
System Manager API
{- "id": "string",
- "name": "string",
- "description": "string",
- "certificate_content": "string",
- "created_at": "2026-05-19T11:05:07Z",
- "last_modified": "2026-05-19T11:05:07Z"
}Delete a certificate from trust store.
| id required | string <uuid> Certificate ID |
Certificate deleted successfully.
Certificate not found.
Certificate is in use by devices.
Internal server error.
API base path
System Manager API
{- "status": 0,
- "message": "string",
- "code": "string",
- "category": "string",
- "help": "string"
}Onboard a BIG-IP device to F5 Insights fleet.
Details of the BIG-IP device to be added.
| retention | string (Retention) ^P(\d+Y)?(\d+M)?(\d+D)?(T(\d+H)?(\d+M)?(\d+S)?)?$ ISO 8601 duration (e.g., P1Y for 1 year, P30D for 30 days).Supported units are Y (years), M (months), D (days), H (hours), M (minutes), S (seconds). Internally converted and rounded up to whole days. Maximum allowed retention is 1 year (P1Y). |
| port | integer [ 1 .. 65535 ] |
| collection_interval | integer >= 1 Collection interval in seconds |
| tls_enabled | boolean Default: false |
| ca | string <uuid> CA certificate UUID from trust store |
| modules | object |
| id | string <uuid> Unique identifier for the device |
| alias_name | string <= 100 characters |
| description | string <= 500 characters |
| username required | string <= 255 characters |
| password required | string <= 255 characters |
| data_center required | string <= 255 characters |
| endpoint required | string Device endpoint in format ip:port or hostname:port (e.g., 192.168.1.100:443, bigip.example.com:8443). |
Device added successfully.
Validation error.
Internal server error.
API base path
System Manager API
{- "retention": "string",
- "port": 1,
- "collection_interval": 1,
- "tls_enabled": false,
- "ca": "string",
- "modules": {
- "apm": false,
- "cgnat": false,
- "dns": false,
- "dos": false,
- "firewall": false,
- "gtm": false,
- "policy_api_protection": false,
- "policy_asm": false,
- "policy_firewall": false,
- "policy_ip_intelligence": false,
- "policy_nat": false,
- "profile_dos": false
}, - "id": "string",
- "alias_name": "string",
- "description": "string",
- "username": "string",
- "password": "string",
- "data_center": "string",
- "endpoint": "string"
}{- "status": 0,
- "message": "string",
- "code": "string",
- "category": "string",
- "help": "string"
}Retrieve all BIG-IP devices onboarded to F5 Insights with pagination and filtering support.
| page | integer >= 1 Default: 1 Page number for pagination (1-based). |
| size | integer >= 1 Number of items per page. |
| since | string <date-time> Return only devices updated after this timestamp (ISO 8601 format). Use the lastSync value from previous response for delta updates. |
| search | string Search term to filter devices by name, alias, or endpoint |
| sort | string Sort order, e.g. 'name,-created_at' (prefix '-' for descending) |
List of BIG-IP devices with pagination metadata.
Validation error.
Internal server error.
API base path
System Manager API
{- "devices": [
- {
- "retention": "string",
- "port": 1,
- "collection_interval": 1,
- "tls_enabled": false,
- "ca": "string",
- "modules": {
- "apm": false,
- "cgnat": false,
- "dns": false,
- "dos": false,
- "firewall": false,
- "gtm": false,
- "policy_api_protection": false,
- "policy_asm": false,
- "policy_firewall": false,
- "policy_ip_intelligence": false,
- "policy_nat": false,
- "profile_dos": false
}, - "id": "string",
- "alias_name": "string",
- "description": "string",
- "username": "string",
- "password": "string",
- "data_center": "string",
- "endpoint": "string",
- "deviceName": "string"
}
], - "pagination": {
- "page": 1,
- "pageSize": 1,
- "totalDevices": 0,
- "totalPages": 0
}
}Updates configuration of a BIG-IP device.
| id required | string Unique identifier of the BIG-IP device to update. |
Updated details of the BIG-IP device.
| retention | string (Retention) ^P(\d+Y)?(\d+M)?(\d+D)?(T(\d+H)?(\d+M)?(\d+S)?)?$ ISO 8601 duration (e.g., P1Y for 1 year, P30D for 30 days).Supported units are Y (years), M (months), D (days), H (hours), M (minutes), S (seconds). Internally converted and rounded up to whole days. Maximum allowed retention is 1 year (P1Y). |
| port | integer [ 1 .. 65535 ] |
| collection_interval | integer >= 1 Collection interval in seconds |
| tls_enabled | boolean Default: false |
| ca | string <uuid> CA certificate UUID from trust store |
| modules | object |
| id | string <uuid> Unique identifier for the device |
| alias_name | string <= 100 characters |
| description | string <= 500 characters |
| username required | string <= 255 characters |
| password required | string <= 255 characters |
| data_center required | string <= 255 characters |
| endpoint required | string Device endpoint in format ip:port or hostname:port (e.g., 192.168.1.100:443, bigip.example.com:8443). |
Device updated successfully.
Validation error.
Internal server error.
API base path
System Manager API
{- "retention": "string",
- "port": 1,
- "collection_interval": 1,
- "tls_enabled": false,
- "ca": "string",
- "modules": {
- "apm": false,
- "cgnat": false,
- "dns": false,
- "dos": false,
- "firewall": false,
- "gtm": false,
- "policy_api_protection": false,
- "policy_asm": false,
- "policy_firewall": false,
- "policy_ip_intelligence": false,
- "policy_nat": false,
- "profile_dos": false
}, - "id": "string",
- "alias_name": "string",
- "description": "string",
- "username": "string",
- "password": "string",
- "data_center": "string",
- "endpoint": "string"
}{- "status": 0,
- "message": "string",
- "code": "string",
- "category": "string",
- "help": "string"
}Partially updates configuration of a BIG-IP device. Only provided fields are updated.
| id required | string Unique identifier of the BIG-IP device to update. |
Partial device update. Only include fields that should be updated.
| alias_name | string <= 100 characters |
| description | string <= 500 characters |
| username | string <= 255 characters |
| password | string <= 255 characters |
| endpoint | string |
| data_center | string <= 255 characters |
| retention | string (Retention) ^P(\d+Y)?(\d+M)?(\d+D)?(T(\d+H)?(\d+M)?(\d+S)?)?$ ISO 8601 duration (e.g., P1Y for 1 year, P30D for 30 days).Supported units are Y (years), M (months), D (days), H (hours), M (minutes), S (seconds). Internally converted and rounded up to whole days. Maximum allowed retention is 1 year (P1Y). |
| collection_interval | integer >= 1 |
| tls_enabled | boolean |
| ca | string <uuid> |
| modules | object |
Device partially updated successfully.
Validation error.
Device not found.
Internal server error.
API base path
System Manager API
{- "alias_name": "string",
- "description": "string",
- "username": "string",
- "password": "string",
- "endpoint": "string",
- "data_center": "string",
- "retention": "string",
- "collection_interval": 1,
- "tls_enabled": true,
- "ca": "string",
- "modules": {
- "apm": true,
- "cgnat": true,
- "dns": true,
- "dos": true,
- "firewall": true,
- "gtm": true,
- "profile_dos": true,
- "policy_api_protection": true,
- "policy_asm": true,
- "policy_firewall": true,
- "policy_ip_intelligence": true,
- "policy_nat": true
}
}{- "retention": "string",
- "port": 1,
- "collection_interval": 1,
- "tls_enabled": false,
- "ca": "string",
- "modules": {
- "apm": false,
- "cgnat": false,
- "dns": false,
- "dos": false,
- "firewall": false,
- "gtm": false,
- "policy_api_protection": false,
- "policy_asm": false,
- "policy_firewall": false,
- "policy_ip_intelligence": false,
- "policy_nat": false,
- "profile_dos": false
}, - "id": "string",
- "alias_name": "string",
- "description": "string",
- "username": "string",
- "password": "string",
- "data_center": "string",
- "endpoint": "string",
- "deviceName": "string"
}Fetch details of a specific BIG-IP device.
| id required | string Unique identifier of the BIG-IP device. |
Device fetched successfully.
Validation error.
Internal server error.
API base path
System Manager API
{- "retention": "string",
- "port": 1,
- "collection_interval": 1,
- "tls_enabled": false,
- "ca": "string",
- "modules": {
- "apm": false,
- "cgnat": false,
- "dns": false,
- "dos": false,
- "firewall": false,
- "gtm": false,
- "policy_api_protection": false,
- "policy_asm": false,
- "policy_firewall": false,
- "policy_ip_intelligence": false,
- "policy_nat": false,
- "profile_dos": false
}, - "id": "string",
- "alias_name": "string",
- "description": "string",
- "username": "string",
- "password": "string",
- "data_center": "string",
- "endpoint": "string",
- "deviceName": "string"
}Delete specific BIG-IP device.
| id required | string Unique identifier of the BIG-IP device. |
Device deleted successfully.
Validation error.
Internal server error.
API base path
System Manager API
{- "retention": "string",
- "port": 1,
- "collection_interval": 1,
- "tls_enabled": false,
- "ca": "string",
- "modules": {
- "apm": false,
- "cgnat": false,
- "dns": false,
- "dos": false,
- "firewall": false,
- "gtm": false,
- "policy_api_protection": false,
- "policy_asm": false,
- "policy_firewall": false,
- "policy_ip_intelligence": false,
- "policy_nat": false,
- "profile_dos": false
}, - "id": "string",
- "alias_name": "string",
- "description": "string",
- "username": "string",
- "password": "string",
- "data_center": "string",
- "endpoint": "string"
}Validate connectivity from F5 Insights to a BIG-IP device using provided credentials.
Device details required for connection validation.
| retention | string (Retention) ^P(\d+Y)?(\d+M)?(\d+D)?(T(\d+H)?(\d+M)?(\d+S)?)?$ ISO 8601 duration (e.g., P1Y for 1 year, P30D for 30 days).Supported units are Y (years), M (months), D (days), H (hours), M (minutes), S (seconds). Internally converted and rounded up to whole days. Maximum allowed retention is 1 year (P1Y). |
| port | integer [ 1 .. 65535 ] |
| collection_interval | integer >= 1 Collection interval in seconds |
| tls_enabled | boolean Default: false |
| ca | string <uuid> CA certificate UUID from trust store |
| modules | object |
| id | string <uuid> Unique identifier for the device |
| alias_name | string <= 100 characters |
| description | string <= 500 characters |
| username required | string <= 255 characters |
| password required | string <= 255 characters |
| data_center required | string <= 255 characters |
| endpoint required | string Device endpoint in format ip:port or hostname:port (e.g., 192.168.1.100:443, bigip.example.com:8443). |
Connection validation result.
Validation error.
Internal server error.
API base path
System Manager API
{- "retention": "string",
- "port": 1,
- "collection_interval": 1,
- "tls_enabled": false,
- "ca": "string",
- "modules": {
- "apm": false,
- "cgnat": false,
- "dns": false,
- "dos": false,
- "firewall": false,
- "gtm": false,
- "policy_api_protection": false,
- "policy_asm": false,
- "policy_firewall": false,
- "policy_ip_intelligence": false,
- "policy_nat": false,
- "profile_dos": false
}, - "id": "string",
- "alias_name": "string",
- "description": "string",
- "username": "string",
- "password": "string",
- "data_center": "string",
- "endpoint": "string"
}{- "reachable": true,
- "authenticated": true,
- "message": "string"
}Get the currently running or most recent migration task. Returns the active migration task if one is in progress, otherwise returns the most recent completed/failed task.
Migration task information retrieved successfully
No migration tasks found
Internal server error
API base path
System Manager API
{- "task_id": "123e4567-e89b-12d3-a456-426614174000",
- "status": "INIT",
- "message": "Migration task created successfully. Use the task_id to query status."
}Start an asynchronous migration task for BIG-IP devices from AST (Application Study Tool) configuration files. Returns a task ID that can be used to query migration status. Only one migration task can be running at a time - attempting to start a second task will return an error.
AST configuration files containing device information.
| defaults_file required | string <binary> ast_defaults.yaml file containing default settings (YAML format) |
| receivers_file required | string <binary> ast_receivers.yml file containing receiver configurations (YAML format) |
Migration task created successfully. Use the returned task_id to query status.
Validation error in uploaded files.
A migration task is already in progress.
Internal server error.
API base path
System Manager API
{- "task_id": "123e4567-e89b-12d3-a456-426614174000",
- "status": "INIT",
- "message": "Migration task created successfully. Use the task_id to query status."
}Get the status of a device migration task including overall progress and individual device status.
| task_id required | string <uuid> The task ID returned from the migration request |
| include_devices | boolean Default: true Include individual device status details |
| limit | integer [ 1 .. 1000 ] Default: 100 Maximum number of device details to return |
| offset | integer >= 0 Default: 0 Offset for pagination of device details |
| updated_since | string <date-time> Filter devices updated since this timestamp (ISO 8601 format, e.g., 2026-01-30T08:00:00Z) |
Migration status retrieved successfully
Task not found
Internal server error
API base path
System Manager API
{- "task_id": "123e4567-e89b-12d3-a456-426614174000",
- "task_type": "MIGRATION",
- "state": "IN_PROGRESS",
- "status": "RUNNING",
- "progress": 45,
- "total_devices": 100,
- "pending_devices": 55,
- "validated_devices": 40,
- "failed_devices": 5,
- "error_message": null,
- "created_at": "2026-01-29T10:30:00Z",
- "updated_at": "2026-01-29T10:35:00Z",
- "devices": [
- {
- "device_name": "bigip/prod-01",
- "validation_status": "SUCCESS",
- "error_message": null,
- "created_at": "2026-01-29T10:30:00Z",
- "updated_at": "2026-01-29T10:32:00Z"
}
]
}Get paginated device-level progress for a migration task with delta update support. Use this for live UI updates showing per-device status (Connected/Failed/In Progress). Supports polling with 'since' parameter to fetch only recently updated devices.
| task_id required | string <uuid> The task ID returned from the migration request |
| page | integer >= 1 Default: 1 Page number for pagination (1-based). |
| size | integer >= 1 Number of items per page. |
| since | string <date-time> Return only devices updated after this timestamp (ISO 8601 format). Use the lastSync value from previous response for delta updates. |
| search | string Search term to filter devices by name, alias, or endpoint |
| sort | string Sort order, e.g. 'name,-created_at' (prefix '-' for descending) |
Device progress retrieved successfully
Invalid request parameters
Task not found
Internal server error
API base path
System Manager API
{- "task_id": "550e8400-e29b-41d4-a716-446655440000",
- "task_status": "RUNNING",
- "task_progress": 45,
- "page": 1,
- "size": 20,
- "total": 45,
- "last_sync": "2026-01-30T12:12:30Z",
- "devices": [
- {
- "id": "660e8400-e29b-41d4-a716-446655440001",
- "device_name": "bigip-prod-01.example.com",
- "status": "SUCCESS",
- "error_message": "Invalid credentials",
- "last_modified": "2026-01-30T12:12:00Z"
}
]
}Retrieve all staging CA certificates associated with a migration task. Returns the list of CA bundles that were extracted during the migration process and are available for validation and commit operations.
| task_id required | string <uuid> The task ID returned from the migration request |
| page | integer >= 1 Default: 1 Page number for pagination (1-based). |
| size | integer >= 1 Number of items per page. |
CA bundle list retrieved successfully
Invalid request parameters
Task not found
Internal server error
API base path
System Manager API
{- "task_id": "550e8400-e29b-41d4-a716-446655440000",
- "page": 1,
- "size": 20,
- "total": 5,
- "ca_bundles": [
- {
- "id": "660e8400-e29b-41d4-a716-446655440000",
- "name": "Production Root CA",
- "description": "Root CA for production environment",
- "certificate_content": "-----BEGIN CERTIFICATE-----\nMIIDXTCCAkWgA...\n-----END CERTIFICATE-----",
- "created_at": "2026-01-30T10:00:00Z",
- "last_modified": "2026-01-30T12:00:00Z"
}
]
}Clean up all staging data associated with a migration task. This removes all staging devices and trust store entries that have not been committed. Successfully committed devices and trust stores remain intact.
| task_id required | string <uuid> The task ID to clean up |
| force | boolean Default: false Force cleanup even if task is still running. WARNING: Use with extreme caution - only when a task is stuck for a very long time. Forcing cleanup of a running task may lead to inconsistent state. |
Cleanup completed successfully
Task not found
Internal server error
API base path
System Manager API
{- "task_id": "123e4567-e89b-12d3-a456-426614174000",
- "deleted_devices": 10,
- "deleted_trust_stores": 5,
- "message": "Successfully cleaned up migration task staging data"
}Retry failed devices from an existing migration task. This endpoint reuses the same task ID and only retries devices with validation_status = 'FAILED'. Failed devices are reset to 'PENDING' and the task state is reset to 'IN_PROGRESS'.
Requirements:
The retry process:
| task_id required | string <uuid> The task ID to retry failed devices for |
Retry initiated successfully. Use the same task_id to query status.
No failed devices to retry
Task not found
A migration task is already running
Internal server error
API base path
System Manager API
{- "message": "Retry task initiated successfully",
- "task_id": "123e4567-e89b-12d3-a456-426614174000"
}Retrieve details of a specific staging device including its validation status, configuration, and error messages if any.
| staging_device_id required | string <uuid> UUID of the staging device to retrieve |
Staging device retrieved successfully
Staging device not found
Internal server error
API base path
System Manager API
{- "id": "660e8400-e29b-41d4-a716-446655440001",
- "task_id": "550e8400-e29b-41d4-a716-446655440000",
- "device_name": "bigip-prod-01.example.com",
- "username": "admin",
- "data_center": "US-EAST-1",
- "tls_enabled": true,
- "ca_bundle_id": "660e8400-e29b-41d4-a716-446655440002",
- "collection_interval": 60,
- "validation_status": "SUCCESS",
- "error_message": "Connection timeout",
- "created_at": "2026-01-30T10:00:00Z",
- "last_modified": "2026-01-30T12:00:00Z"
}Updates a single staging device with provided fields, validates connectivity, and commits the device to the main devices table. If a device with the same endpoint exists, it will be updated instead of creating a new one.
| staging_device_id required | string <uuid> UUID of the staging device to update |
| alias_name | string <= 100 characters |
| description | string <= 500 characters |
| username | string <= 255 characters |
| password | string <= 255 characters |
| endpoint | string |
| data_center | string <= 255 characters |
| retention | string (Retention) ^P(\d+Y)?(\d+M)?(\d+D)?(T(\d+H)?(\d+M)?(\d+S)?)?$ ISO 8601 duration (e.g., P1Y for 1 year, P30D for 30 days).Supported units are Y (years), M (months), D (days), H (hours), M (minutes), S (seconds). Internally converted and rounded up to whole days. Maximum allowed retention is 1 year (P1Y). |
| collection_interval | integer >= 1 |
| tls_enabled | boolean |
| ca | string <uuid> |
| modules | object |
Staging device updated and committed successfully
Device validation failed or invalid request
Staging device not found
Internal server error
API base path
System Manager API
{- "alias_name": "string",
- "description": "string",
- "username": "string",
- "password": "string",
- "endpoint": "string",
- "data_center": "string",
- "retention": "string",
- "collection_interval": 1,
- "tls_enabled": true,
- "ca": "string",
- "modules": {
- "apm": true,
- "cgnat": true,
- "dns": true,
- "dos": true,
- "firewall": true,
- "gtm": true,
- "profile_dos": true,
- "policy_api_protection": true,
- "policy_asm": true,
- "policy_firewall": true,
- "policy_ip_intelligence": true,
- "policy_nat": true
}
}{- "message": "Staging device updated and committed successfully",
- "staging_device_id": "string"
}Updates a single staging CA bundle with provided fields, validates certificate format, and commits the certificate to the trust_store table. If a certificate with the same content already exists, it will be linked instead of creating a duplicate.
| staging_ca_id required | string <uuid> UUID of the staging CA bundle to update |
| name required | string <= 255 characters Name of the certificate |
| description | string Description of the certificate |
| certificate_content required | string PEM encoded certificate content |
Staging CA bundle updated and committed successfully
Invalid certificate data
Staging CA bundle not found
Internal server error
API base path
System Manager API
{- "name": "string",
- "description": "string",
- "certificate_content": "string"
}{- "message": "Staging CA bundle updated and committed successfully",
- "staging_ca_id": "string"
}Synchronous migration of BIG-IP devices from AST configuration files (legacy endpoint). For better experience with large migrations, use the async endpoint instead.
AST configuration files containing device information.
| defaults_file required | string <binary> ast_defaults.yaml file containing default settings (YAML format) |
| receivers_file required | string <binary> ast_receivers.yml file containing receiver configurations (YAML format) |
Migration completed with summary of results.
Validation error in uploaded files.
Internal server error.
API base path
System Manager API
{- "total": 10,
- "successful": 8,
- "failed": 2,
- "results": [
- {
- "device_name": "bigip-prod-01",
- "status": "success",
- "message": "Device imported successfully",
- "device_id": "123e4567-e89b-12d3-a456-426614174000"
}
]
}Import multiple BIG-IP devices to F5 Insights in a single operation.
Array of devices to be imported.
| devices required | Array of objects (Device) non-empty List of devices to import |
Bulk import completed with summary of results.
Validation error.
Internal server error.
API base path
System Manager API
{- "devices": [
- {
- "retention": "string",
- "port": 1,
- "collection_interval": 1,
- "tls_enabled": false,
- "ca": "string",
- "modules": {
- "apm": false,
- "cgnat": false,
- "dns": false,
- "dos": false,
- "firewall": false,
- "gtm": false,
- "policy_api_protection": false,
- "policy_asm": false,
- "policy_firewall": false,
- "policy_ip_intelligence": false,
- "policy_nat": false,
- "profile_dos": false
}, - "id": "string",
- "alias_name": "string",
- "description": "string",
- "username": "string",
- "password": "string",
- "data_center": "string",
- "endpoint": "string"
}
]
}{- "total": 10,
- "successful": 8,
- "failed": 2,
- "results": [
- {
- "device_name": "bigip-prod-01",
- "status": "success",
- "message": "Device imported successfully",
- "device_id": "123e4567-e89b-12d3-a456-426614174000"
}
]
}Starts async task to configure Node1 as primary and Node2 as standby
| primary_node required | object (PrimaryNodeConfig) |
| standby_node required | object (StandbyNodeConfig) |
HA initialization task created successfully
Invalid request body
HA already exists or active task exists
Internal server error
API base path
System Manager API
{- "primary_node": {
- "node_name": "primary-node",
- "site": "primary-site"
}, - "standby_node": {
- "node_name": "standby-node",
- "site": "standby-site"
}
}{- "task_id": "550e8400-e29b-41d4-a716-446655440000",
- "status": "pending",
- "message": "HA initialization task created. Poll /api/dr-ha/tasks/550e8400-e29b-41d4-a716-446655440000 for progress.",
- "created_at": "2026-01-30T10:00:00Z"
}Retrieves the current status and progress of an HA initialization task
| task_id required | string <uuid> Task ID (UUID) |
Task status retrieved successfully
Task not found
API base path
System Manager API
{- "task_id": "550e8400-e29b-41d4-a716-446655440000",
- "task_type": "initialize",
- "status": "in_progress",
- "current_step": "Configuring PostgreSQL replication on standby node",
- "total_steps": 8,
- "completed_steps": 3,
- "progress_pct": 37,
- "error_message": null,
- "sub_tasks": [
- {
- "component": "postgres",
- "role": "primary",
- "status": "completed",
- "description": "Setting up PostgreSQL replication user",
- "error_detail": null
}
], - "started_at": "2026-01-30T10:00:05Z",
- "completed_at": null,
- "duration": null
}Retrieves the current status of the HA cluster including all nodes
Cluster status retrieved successfully
No HA cluster configured
API base path
System Manager API
{- "cluster_id": "660e8400-e29b-41d4-a716-446655440001",
- "cluster_name": "primary-standby-cluster",
- "status": "active",
- "site": "primary-site",
- "nodes": [
- {
- "node_id": "770e8400-e29b-41d4-a716-446655440002",
- "node_name": "primary-node",
- "role": "primary",
- "status": "healthy",
- "services": {
- "postgres": "healthy",
- "vault": "healthy",
- "victoriametrics": "healthy",
- "clickhouse": "healthy",
- "otel": "healthy"
}, - "last_checked": "2026-01-30T12:15:00Z"
}
], - "initialized_at": "2026-01-30T10:05:00Z",
- "last_failover_at": null
}Initiates failover from current primary to standby node (promotes standby to primary)
| force | boolean Default: false Skip health checks and force failover (use with caution) |
| timeout_seconds | integer >= 60 Default: 300 Maximum time to wait for failover to complete (in seconds) |
Failover task created successfully
Invalid request body
No HA cluster configured
Internal server error
API base path
System Manager API
{- "force": false,
- "timeout_seconds": 300
}{- "task_id": "550e8400-e29b-41d4-a716-446655440000",
- "status": "pending",
- "message": "HA initialization task created. Poll /api/dr-ha/tasks/550e8400-e29b-41d4-a716-446655440000 for progress.",
- "created_at": "2026-01-30T10:00:00Z"
}Reconfigures this node as standby to replicate from new primary
| new_primary_address required | string Address of the new primary node in format http://hostname:port |
| new_primary_node_name | string Name of the new primary node |
| force | boolean Default: false Skip health checks and force failback (use with caution) |
Failback task created successfully
Invalid request body
No HA cluster configured
Internal server error
API base path
System Manager API
{- "new_primary_node_name": "new-primary-node",
- "force": false
}{- "task_id": "550e8400-e29b-41d4-a716-446655440000",
- "status": "pending",
- "message": "HA initialization task created. Poll /api/dr-ha/tasks/550e8400-e29b-41d4-a716-446655440000 for progress.",
- "created_at": "2026-01-30T10:00:00Z"
}