curl -X GET '{baseUrl}/api/platform/discover' \
-H 'Authorization: Bearer YOUR_API_TOKEN' \
-H 'Cache-Control: no-cache' \
-H 'Accept: */*'
{
"scanTimestamp": "2024-10-09T14:32:15.847Z",
"totalServices": 15,
"healthyServices": 14,
"unhealthyServices": 1,
"services": {
"flowxEngine": {
"name": "FlowX Engine",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://flowx-engine:8080",
"capabilities": ["process-execution", "workflow-management", "business-rules"],
"lastHealthCheck": "2024-10-09T14:32:10Z"
},
"flowxDesigner": {
"name": "FlowX Designer",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://flowx-designer:3000",
"capabilities": ["process-design", "ui-design", "form-builder"],
"lastHealthCheck": "2024-10-09T14:32:11Z"
},
"flowxAdmin": {
"name": "FlowX Admin",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://flowx-admin:4000",
"capabilities": ["user-management", "system-config", "monitoring"],
"lastHealthCheck": "2024-10-09T14:32:12Z"
},
"flowxCms": {
"name": "FlowX CMS",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://flowx-cms:5000",
"capabilities": ["content-management", "localization", "asset-management"],
"lastHealthCheck": "2024-10-09T14:32:13Z"
},
"documentManagement": {
"name": "Document Management Plugin",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://document-plugin:8081",
"capabilities": ["document-storage", "file-processing", "document-templates"],
"lastHealthCheck": "2024-10-09T14:32:14Z"
},
"notifications": {
"name": "Notifications Plugin",
"version": "5.1.0",
"status": "unhealthy",
"endpoint": "http://notifications-plugin:8082",
"capabilities": ["email-notifications", "sms-notifications", "push-notifications"],
"lastHealthCheck": "2024-10-09T14:30:00Z",
"error": "Connection timeout - service may be down"
},
"taskManagement": {
"name": "Task Management Plugin",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://task-plugin:8083",
"capabilities": ["task-assignment", "task-tracking", "workflow-integration"],
"lastHealthCheck": "2024-10-09T14:32:15Z"
}
},
"infrastructure": {
"database": {
"type": "PostgreSQL",
"version": "13.7",
"status": "healthy",
"connections": {
"active": 45,
"idle": 15,
"max": 100
},
"lastHealthCheck": "2024-10-09T14:32:00Z"
},
"messageBroker": {
"type": "Apache Kafka",
"version": "3.4.0",
"status": "healthy",
"brokers": 3,
"topics": 28,
"lastHealthCheck": "2024-10-09T14:32:05Z"
},
"redis": {
"type": "Redis",
"version": "7.0.11",
"status": "healthy",
"memory": {
"used": "245MB",
"available": "1GB"
},
"lastHealthCheck": "2024-10-09T14:32:08Z"
}
},
"externalIntegrations": {
"authProvider": {
"name": "Keycloak",
"status": "healthy",
"endpoint": "https://auth.company.com",
"lastHealthCheck": "2024-10-09T14:32:00Z"
},
"documentStorage": {
"name": "MinIO S3",
"status": "healthy",
"endpoint": "https://storage.company.com",
"buckets": 12,
"lastHealthCheck": "2024-10-09T14:32:02Z"
}
},
"summary": {
"scanDuration": "4.2s",
"newServicesFound": 0,
"configurationChanges": 2,
"issuesDetected": 1,
"recommendations": [
"Check notifications plugin connectivity",
"Consider scaling database connections"
]
}
}
Force platform rescan
Trigger a forced rescan of the platform to discover and refresh all available services and configurations
GET
{baseUrl}
/
api
/
platform
/
discover
curl -X GET '{baseUrl}/api/platform/discover' \
-H 'Authorization: Bearer YOUR_API_TOKEN' \
-H 'Cache-Control: no-cache' \
-H 'Accept: */*'
{
"scanTimestamp": "2024-10-09T14:32:15.847Z",
"totalServices": 15,
"healthyServices": 14,
"unhealthyServices": 1,
"services": {
"flowxEngine": {
"name": "FlowX Engine",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://flowx-engine:8080",
"capabilities": ["process-execution", "workflow-management", "business-rules"],
"lastHealthCheck": "2024-10-09T14:32:10Z"
},
"flowxDesigner": {
"name": "FlowX Designer",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://flowx-designer:3000",
"capabilities": ["process-design", "ui-design", "form-builder"],
"lastHealthCheck": "2024-10-09T14:32:11Z"
},
"flowxAdmin": {
"name": "FlowX Admin",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://flowx-admin:4000",
"capabilities": ["user-management", "system-config", "monitoring"],
"lastHealthCheck": "2024-10-09T14:32:12Z"
},
"flowxCms": {
"name": "FlowX CMS",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://flowx-cms:5000",
"capabilities": ["content-management", "localization", "asset-management"],
"lastHealthCheck": "2024-10-09T14:32:13Z"
},
"documentManagement": {
"name": "Document Management Plugin",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://document-plugin:8081",
"capabilities": ["document-storage", "file-processing", "document-templates"],
"lastHealthCheck": "2024-10-09T14:32:14Z"
},
"notifications": {
"name": "Notifications Plugin",
"version": "5.1.0",
"status": "unhealthy",
"endpoint": "http://notifications-plugin:8082",
"capabilities": ["email-notifications", "sms-notifications", "push-notifications"],
"lastHealthCheck": "2024-10-09T14:30:00Z",
"error": "Connection timeout - service may be down"
},
"taskManagement": {
"name": "Task Management Plugin",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://task-plugin:8083",
"capabilities": ["task-assignment", "task-tracking", "workflow-integration"],
"lastHealthCheck": "2024-10-09T14:32:15Z"
}
},
"infrastructure": {
"database": {
"type": "PostgreSQL",
"version": "13.7",
"status": "healthy",
"connections": {
"active": 45,
"idle": 15,
"max": 100
},
"lastHealthCheck": "2024-10-09T14:32:00Z"
},
"messageBroker": {
"type": "Apache Kafka",
"version": "3.4.0",
"status": "healthy",
"brokers": 3,
"topics": 28,
"lastHealthCheck": "2024-10-09T14:32:05Z"
},
"redis": {
"type": "Redis",
"version": "7.0.11",
"status": "healthy",
"memory": {
"used": "245MB",
"available": "1GB"
},
"lastHealthCheck": "2024-10-09T14:32:08Z"
}
},
"externalIntegrations": {
"authProvider": {
"name": "Keycloak",
"status": "healthy",
"endpoint": "https://auth.company.com",
"lastHealthCheck": "2024-10-09T14:32:00Z"
},
"documentStorage": {
"name": "MinIO S3",
"status": "healthy",
"endpoint": "https://storage.company.com",
"buckets": 12,
"lastHealthCheck": "2024-10-09T14:32:02Z"
}
},
"summary": {
"scanDuration": "4.2s",
"newServicesFound": 0,
"configurationChanges": 2,
"issuesDetected": 1,
"recommendations": [
"Check notifications plugin connectivity",
"Consider scaling database connections"
]
}
}
Documentation Index
Fetch the complete documentation index at: https://docs.flowx.ai/llms.txt
Use this file to discover all available pages before exploring further.
Reference under review. This endpoint is part of the platform health/discovery surface (Kubernetes-aware). It is an admin / operations endpoint, not a public integration API. For supported integration patterns, see Consuming FlowX from external apps.
This endpoint performs a comprehensive scan of the platform infrastructure and may take some time to complete depending on your platform size and complexity.
Endpoint
curl -X GET '{baseUrl}/api/platform/discover' \
-H 'Authorization: Bearer YOUR_API_TOKEN' \
-H 'Cache-Control: no-cache' \
-H 'Accept: */*'
The base URL of your FlowX platform instance
Headers
Bearer token for API authentication. Format:
Bearer YOUR_API_TOKENControls caching behavior. Recommended to use
no-cache to ensure fresh discovery resultsSpecifies the media types that are acceptable for the response
Identifies the client application making the request
Specifies the content encoding that the client can understand
Response
{
"scanTimestamp": "2024-10-09T14:32:15.847Z",
"totalServices": 15,
"healthyServices": 14,
"unhealthyServices": 1,
"services": {
"flowxEngine": {
"name": "FlowX Engine",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://flowx-engine:8080",
"capabilities": ["process-execution", "workflow-management", "business-rules"],
"lastHealthCheck": "2024-10-09T14:32:10Z"
},
"flowxDesigner": {
"name": "FlowX Designer",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://flowx-designer:3000",
"capabilities": ["process-design", "ui-design", "form-builder"],
"lastHealthCheck": "2024-10-09T14:32:11Z"
},
"flowxAdmin": {
"name": "FlowX Admin",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://flowx-admin:4000",
"capabilities": ["user-management", "system-config", "monitoring"],
"lastHealthCheck": "2024-10-09T14:32:12Z"
},
"flowxCms": {
"name": "FlowX CMS",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://flowx-cms:5000",
"capabilities": ["content-management", "localization", "asset-management"],
"lastHealthCheck": "2024-10-09T14:32:13Z"
},
"documentManagement": {
"name": "Document Management Plugin",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://document-plugin:8081",
"capabilities": ["document-storage", "file-processing", "document-templates"],
"lastHealthCheck": "2024-10-09T14:32:14Z"
},
"notifications": {
"name": "Notifications Plugin",
"version": "5.1.0",
"status": "unhealthy",
"endpoint": "http://notifications-plugin:8082",
"capabilities": ["email-notifications", "sms-notifications", "push-notifications"],
"lastHealthCheck": "2024-10-09T14:30:00Z",
"error": "Connection timeout - service may be down"
},
"taskManagement": {
"name": "Task Management Plugin",
"version": "5.1.0",
"status": "healthy",
"endpoint": "http://task-plugin:8083",
"capabilities": ["task-assignment", "task-tracking", "workflow-integration"],
"lastHealthCheck": "2024-10-09T14:32:15Z"
}
},
"infrastructure": {
"database": {
"type": "PostgreSQL",
"version": "13.7",
"status": "healthy",
"connections": {
"active": 45,
"idle": 15,
"max": 100
},
"lastHealthCheck": "2024-10-09T14:32:00Z"
},
"messageBroker": {
"type": "Apache Kafka",
"version": "3.4.0",
"status": "healthy",
"brokers": 3,
"topics": 28,
"lastHealthCheck": "2024-10-09T14:32:05Z"
},
"redis": {
"type": "Redis",
"version": "7.0.11",
"status": "healthy",
"memory": {
"used": "245MB",
"available": "1GB"
},
"lastHealthCheck": "2024-10-09T14:32:08Z"
}
},
"externalIntegrations": {
"authProvider": {
"name": "Keycloak",
"status": "healthy",
"endpoint": "https://auth.company.com",
"lastHealthCheck": "2024-10-09T14:32:00Z"
},
"documentStorage": {
"name": "MinIO S3",
"status": "healthy",
"endpoint": "https://storage.company.com",
"buckets": 12,
"lastHealthCheck": "2024-10-09T14:32:02Z"
}
},
"summary": {
"scanDuration": "4.2s",
"newServicesFound": 0,
"configurationChanges": 2,
"issuesDetected": 1,
"recommendations": [
"Check notifications plugin connectivity",
"Consider scaling database connections"
]
}
}
ISO 8601 formatted timestamp of when the platform rescan was completed
Total number of services discovered during the rescan
Number of services that are currently healthy and operational
Number of services that are experiencing issues or are unreachable
Detailed information about all discovered FlowX platform services
Show Service details
Show Service details
Core FlowX Engine service information
Show Engine properties
Show Engine properties
Display name of the service
Current version of the service
Health status:
healthy, unhealthy, or unknownService endpoint URL for internal communication
List of capabilities provided by this service
Timestamp of the most recent health check
FlowX Designer service for process and UI design
FlowX Admin service for system administration
FlowX CMS service for content management
Document Management Plugin service
Notifications Plugin service (may include error details if unhealthy)
Task Management Plugin service
Information about underlying infrastructure components
Show Infrastructure details
Show Infrastructure details
Message broker information including cluster status
Redis cache information including memory usage
Summary information about the rescan operation
Show Summary details
Show Summary details
Time taken to complete the platform rescan
Number of new services discovered since the last scan
Number of configuration changes detected
Number of issues or problems identified during the scan
List of recommended actions based on scan results
Error Responses
{
"error": "Unauthorized",
"message": "Invalid or missing authentication token",
"status": 401
}
{
"error": "Internal Server Error",
"message": "Platform rescan failed due to internal error",
"status": 500,
"details": "Connection timeout while discovering services"
}
Usage Examples
Basic Platform Rescan
const axios = require('axios');
async function forcePlatformRescan() {
try {
const response = await axios.get(`${baseUrl}/api/platform/discover`, {
headers: {
'Authorization': `Bearer ${apiToken}`,
'Cache-Control': 'no-cache'
}
});
const scanResult = response.data;
console.log(`Rescan completed in ${scanResult.summary.scanDuration}`);
console.log(`Services: ${scanResult.healthyServices}/${scanResult.totalServices} healthy`);
if (scanResult.summary.issuesDetected > 0) {
console.warn(`Issues detected: ${scanResult.summary.issuesDetected}`);
scanResult.summary.recommendations.forEach(rec => {
console.warn(`- ${rec}`);
});
}
return scanResult;
} catch (error) {
console.error('Rescan failed:', error.response?.data || error.message);
throw error;
}
}
When to Use Force Rescan
- Service Deployment
- Configuration Updates
- Troubleshooting
After deploying new servicesUse force rescan when you’ve deployed new microservices or updated existing ones to ensure the platform recognizes all available endpoints and configurations.
# After deployment
kubectl apply -f new-service.yaml
# Then trigger rescan
curl -X GET '/api/platform/discover' -H 'Authorization: Bearer TOKEN'
After configuration changesTrigger a rescan when you’ve updated platform configurations, environment variables, or service registrations that need immediate recognition.
When services aren’t recognizedIf the platform isn’t detecting services or configurations that should be available, a force rescan can help resolve discovery issues.
Last modified on June 2, 2026
Was this page helpful?
⌘I

