Create Recommendation Session

Create Recommendation Session
Create and start a recommendation session

Initiates a new recommendation session to analyze network traffic and generate security policies.

Notes:

  • The session can be configured for CLASSIC, APPLICATION, or ENVIRONMENT recommendation types.
  • Analysis begins automatically upon creation based on the provided context and parameters.
  • Returns a 202 Accepted with an async operation ID. Use the /recommendations/{id}/status endpoint to poll for analysis completion.
Request
URI
POST
https://{api_host}/intelligence/recommendations
COPY
Request Body

The recommendation session configuration including the recommendation type, site identifiers, time window for analysis, context inputs (VMs, groups, applications, or environments), and analysis parameters such as segmentation strategies, connectivity preferences, and service filters.

RecommendationSession of type(s) application/json
Required  
This request body class requires all of the following: ManagedResource , InlineRecommendationSession1
{
    "display_name": "Application Recommendation Example",
    "description": "Recommendation created on 3/11/26, 2:43 PM",
    "site_ids": [
        "9e0865d0-9d89-44c7-8cc0-9f96a9b35721"
    ],
    "start_time": 1772664273441,
    "monitoring_enabled": true,
    "action": "ANALYZE",
    "recommendation_type": "APPLICATION",
    "context_application": {
        "id": "26ecd766-7340-40f9-8606-218acc036687",
        "site_ids": [
            "9e0865d0-9d89-44c7-8cc0-9f96a9b35721"
        ]
    },
    "segmentation_strategies": [],
    "connectivity_preference": "NONE",
    "connectivity_preference_logging_enabled": false,
    "exclude_multicast_flows": true,
    "exclude_broadcast_flows": true,
    "policy_type": "L4",
    "additional_rules": [],
    "use_private_ip_range_group": false,
    "separate_rules_by_services": false
}
Authentication
This operation uses the following authentication methods.
Responses
202

The recommendation session creation request has been accepted and is being processed asynchronously. The response includes an async operation identifier that can be used to track the status of the recommendation session creation.

Returns AsyncApiResponse of type(s) application/json
{
    "id": "3f2a2789-8a6b-47d2-b87a-8acfd8bce98e",
    "status_url": "https://<ssp_host>/intelligence/recommendations/3f2a2789-8a6b-47d2-b87a-8acfd8bce98e/status"
}
string
id
Optional

UUID identifier of the response.

string
status_url
Optional

The URL to check the status of the operation.


400

Bad Request

Returns BadRequest of type(s) application/json
{
    "error_code": 0,
    "module_name": "string",
    "error_message": "string"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


401

Unauthorized

Returns Unauthorized of type(s) application/json
{
    "error_code": 0,
    "module_name": "string",
    "error_message": "string"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


403

Forbidden

Returns Forbidden of type(s) application/json
{
    "error_code": 0,
    "module_name": "string",
    "error_message": "string"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


412

Precondition Failed

Returns PreconditionFailed of type(s) application/json
{
    "error_code": 0,
    "module_name": "string",
    "error_message": "string"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


428

Precondition Required

Returns PreconditionRequired of type(s) application/json
{
    "error_code": 0,
    "module_name": "string",
    "error_message": "string"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


429

Too Many Requests

Returns TooManyRequests of type(s) application/json
{
    "error_code": 0,
    "module_name": "string",
    "error_message": "string"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


default

Error

Returns Error of type(s) application/json
{
    "error_code": 0,
    "module_name": "string",
    "error_message": "string"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


Code Samples
COPY
                    curl -X POST -H 'Authorization: <value>' -H 'Content-Type: application/json' -d '{}' https://{api_host}/intelligence/recommendations