Inventory API Operations Index
All available Inventory API Operations
Returns a paginated, filterable list of segmentation objects across all types (applications, environments, tiers, infrastructure asset groups, and regions/zones).
Notes:
- All request filters are optional and can be combined.
segmentation_typerestricts results to one or more object types.parent_idfinds child objects (e.g., tiers of an application);child_idfinds parent objects (e.g., the application containing a tier).application_type,application_workload_type, andflow_prioritization_enabledapply only whensegmentation_typeincludesAPPLICATION.realization_group_filterrequiressite_idplus eitherpolicy_pathorrealization_id.- Use
GET /inventory/segmentation/segmentation-objects/{segmentation-object-id}to retrieve full details for a specific object.
Retrieves the full details of a single segmentation object by its unique ID, including its hierarchy, realization groups, status, and any active alerts.
Notes:
segmentation-object-idis the unique internal ID of the object (not thedisplay_name).- The response is a polymorphic
SegmentationObject; the concrete type is identified by thesegmentation_typefield. - To list objects by type or filter criteria, use
POST /inventory/segmentation/segmentation-objects.
Performs a full override update of a segmentation object. Only the classification and behavior fields of an APPLICATION object can be modified.
Notes:
- Only
application_type,application_workload_type, andflow_prioritization_enabledcan be changed. - Non-application objects (
ENVIRONMENT,TIER,INFRASTRUCTURE_ASSET,OTHER) cannot be updated through this endpoint. - The full
SegmentationObjectpayload must be provided (not a partial update).
Retrieves all active segmentation sessions, once a session is deleted it will no longer appear here.
Notes
- The
idfrom each session entry is thesession-idused in all/{session-id}/*endpoints. - Sessions are returned in no guaranteed order; use
GET /{session-id}/statusto check the current lifecycle state of a specific session. - Returns 200 on success.
Creates a new segmentation session and uploads an asset CSV file in a single request. Provide asset_file_name with asset_file_contents. The server validates and stores the file for further processing.
Notes
- Returns 202 on successful upload.
- After successful upload, validation of file will automatically trigger and status will be
FILE_VALIDATING. - Poll
GET /{session-id}/statusuntilFILE_VALIDATED. - If there are any issues with validation, session will end up in
FILE_VALIDATION_ERROR, at which point the session will still be persisted to view the errors. - To progress forward from
FILE_VALIDATION_ERROR, delete the session and address the relevant issues before re-uploading. - One session is in
FILE_VALIDATEDstate mappings for the csv file can be pushed throughPUT /{session-id}/settings.
Returns two global settings used by any operation that creates groups: the group delimiter and the group prefix. Both apply across segmentation planning and infrastructure monitoring features.
Notes
- These settings are global and apply to all sessions, not to any individual session.
- Use
PUT /segmentation/settingsto update them; changes take effect immediately for any subsequent group-creating operation. - Returns 200 on success.
Updates the group delimiter and group prefix. Both settings apply to any operation that creates groups, including segmentation planning and infrastructure monitoring. The updated settings are returned in the response.
Notes
- These are global settings; updating them affects all subsequent group-creating operations across all sessions.
- Existing published groups are not renamed when settings change - only new publications use the updated values.
- Returns 200 on success.
Retrieves details of a specific segmentation session by its unique identifier. Returns session metadata including status, timestamps, and configuration.
Notes
- The
status.statusfield reflects the current lifecycle stage (e.g.,FILE_VALIDATED,FILE_PARSED,ANALYSIS_SUCCESS). UseGET /{session-id}/statusfor lightweight polling without the full session payload. - The
actionfield shows the last action that was requested; it does not indicate the current processing state. - Returns 200 on success.
Updates a segmentation session. This endpoint is used to trigger actions on the session such as starting analysis. If an action can be cancelled, such as analysis, then the action can be cancelled by setting the corresponding cancel action.
Only the 'action' field is writable. All other fields, including those inherited from ManagedResource (such as display_name, description, tags, etc.), are read-only and will be ignored if provided in the request. The _revision field from ManagedResource must be provided for optimistic locking and is auto-incremented by the server.
Notes
- There are 4 separate actions that a user can invoke on the session
PARSE_FILE,START_ANALYSIS,RERUN_ANALYSIS,CANCEL_ANALYSIS - File Validation happens implicitly on file upload as part of session creation, details for this are in
POST /segmentation. PARSE_FILE: requiresstatusto beFILE_READY_TO_PARSE. Ensure CSV column mappings are configured viaPUT /{session-id}/settingsfirst. PollGET /{session-id}/statusuntilFILE_PARSEDorFILE_PARSING_ERROR.START_ANALYSIS: for starting a fresh analysis after a successful parsing of the csv file. Requiresstatusto beFILE_PARSED. PollGET /{session-id}/statusuntilANALYSIS_SUCCESSorANALYSIS_ERRORafter triggering.RERUN_ANALYSIS: for rerunning the analysis. Requires status to beANALYSIS_SUCCESSorANALYSIS_ERROR. PollGET /{session-id}/statusuntilANALYSIS_SUCCESSorANALYSIS_ERRORafter triggering.CANCEL_ANALYSIS: for cancelling an analysis which is pending or already in progress. Requires status to beANALYSIS_PENDINGorANALYSIS_IN_PROGRESS.- Returns 202 on success along with
/{session-id}/statusurl on which to poll the triggered action.
Deletes a segmentation session and all associated resources including analysis results, proposed groups, applications, and configuration data.
Notes
- The segmentation session can create child resources like proposed segmentation groups.
- In the case that there are child resources force delete must be used so that the delete will cascade to the child resources.
- Returns 200 on success
- Will also return 200 on an already deleted session
Retrieves detailed real-time status information for a segmentation session. This endpoint provides the current status, progress, and any errors without returning the full session object. Use this for polling or monitoring session progress.
Notes
- Polling states for the session are
FILE_VALIDATING,FILE_PARSING,ANALYSIS_PENDING,ANALYSIS_IN_PROGRESS - Refer to
PUT /segmentation/{session-id}/for details on expected state transitions and actions. - Returns 200 on success
Retrieves the configuration settings for a segmentation session, including CSV mapping configuration and publish settings.
Updates the configuration settings for a segmentation session. This includes CSV column mappings and publish settings.
Notes
- Must be called before
PUT /{session-id}withaction: PARSE_FILE. csv_mappingscan only be updated prior to parsing the file, once we are pastFILE_PARSEDupdating the mappings will result in an error.allow_existing_group_renamecan be updated at any point during the session. Objects for which publish has already been triggered will use the setting at the time of publish.- Returns 200 on success
Retrieves paginated CSV entries with optional filtering and sorting. This endpoint allows clients to browse and search through the uploaded CSV data.
Notes
- Supported sort_by values: rowNumber (default), assetIdentifiers, assetType
- Returns 200 on success
Exports the uploaded asset CSV file annotated with parsing errors. This file can be used to identify and fix problems in the input data before running the analysis.
Retrieves paginated list of objects that were successfully resolved from the CSV data to NSX entities (VMs, segments, etc.) with optional filtering. Note that unresolved ips will always be empty in the response because this API is for resolved objects only.
Notes
- Supported sort_by values: displayName (default), objectType
- Returns 200 on success
Retrieves paginated list of alerts and issues identified during analysis, such as unresolved assets, naming conflicts, or configuration problems.
Retrieves a paginated list of proposed segmentation objects generated during segmentation analysis. Segmentation objects represent logical entities (applications, tiers, environments, regions, zones, infrastructure services) that may span multiple sites.
Notes
- Only meaningful after
ANALYSIS_SUCCESSelse will return error if queried before - Supported sort_by values: displayName (default)
- The
idof each returned object is theproposed-segmentation-object-id - Used in subsequent calls
- Proposed segmentation objects internally contain a list of the groups that will be created on nsx when publish is initiated
- Publishing a segmentation object publishes all of its
proposed_groups; individual group publication is not supported through this schema - Returns 200 on success
Retrieves detailed information about a specific proposed segmentation object by its unique identifier. The object can be of any type (OTHER, APPLICATION, APPLICATION_TIER, ENVIRONMENT, INFRASTRUCTURE_SERVICE).
Returns the complete configuration including hierarchy tags, type-specific properties, and a list of proposed groups (one per site). The response uses a discriminator to return the appropriate type-specific schema with all relevant properties.
Check the segmentation_object_type field in the response to determine the specific object type.
Updates a proposed segmentation object. This endpoint is primarily used to set the publish_action field to trigger publication or cancel an ongoing publish operation.
Notes
- When publishing a segmentation object, all associated groups will be published.
- Can call
FORCE_PUBLISHwhen the capacity limit for groups will be exceeded - Returns 202 on success
Retrieves the current publish status of a proposed segmentation object without returning the full object.
Retrieves a paginated list of resolved members (VMs, segments, DVPGs) that belong to a specific group within a segmentation object. Members are tied to individual groups, not to the segmentation object as a whole.
Notes
- Unresolved IPs are returned separately via the ip-addresses endpoint.
- Supported sort_by values: displayName (default), objectType
- Returns 200 on success.
Retrieves a paginated list of unresolved IP addresses associated with a specific group within a segmentation object.
Notes
- IP addresses are tied to individual groups, not to the segmentation object as a whole.
- Only unresolved IP addresses, i.e. that could not be matched to NSX entities, are returned by this API.
- These IPs will be added as static members to the NSX group during publication.
Retrieves a paginated list of proposed security policies generated during segmentation analysis.
Notes
- Security policies represent proposed NSX security policies that can be published.
- Returns 200 on success
Retrieves detailed information about a specific proposed security policy by its unique identifier.
Updates a proposed security policy. Writable fields are publish_action, display_name, and description. The request body must include the current revision value for optimistic concurrency control.
Notes
- Publish preconditions: PUBLISH is a no-op if the policy is already published successfully or
- if publication is already in progress. All groups referenced by the policy's rules must be
- published before PUBLISH is accepted. CANCEL_PUBLISH attempts to cancel any ongoing
- publication; if no publication is in progress, it is a no-op.
- Returns 202 on success
Deletes a proposed security policy and all of its rules. This operation cannot be undone.
Retrieves the publish status and any error message for a specific proposed security policy without returning the full policy object.
Notes Use this for polling or monitoring security policy publish progress.
- Returns 200 on success
Retrieves a paginated list of rules for a specific proposed security policy.
Notes
- Rules are always returned ordered by sequence number ascending.
- Filtering and sorting parameters in the request body are not applied.
- Returns 200 on success
Retrieves detailed information about a specific rule within a proposed security policy.
Updates a rule within a proposed security policy. Writable fields are display_name, description, action, and disabled. The request body must include the current revision value for optimistic concurrency control.
Notes
- Only rules whose proposed_sync_action is CREATE or OVERWRITE are writable; attempting to update a rule with REORDER, SKIP, or DELETE returns an error.
- The request body must include the current revision value for optimistic concurrency control.
- Returns 200 on success
Deletes a rule from a proposed security policy. This operation cannot be undone.
Retrieves a paginated list of proposed IDS security policies generated during segmentation analysis.
Notes
- IDS security policies represent proposed NSX IDS security policies that can be published.
- Returns 200 on success
Retrieves detailed information about a specific proposed IDS security policy by its unique identifier.
Updates a proposed IDS security policy. Writable fields are publish_action, display_name, and description. The request body must include the current revision value for optimistic concurrency control.
Publish preconditions: PUBLISH is a no-op if the policy is already published successfully or if publication is already in progress. CANCEL_PUBLISH attempts to cancel any ongoing publication; if no publication is in progress, it is a no-op.
Deletes a proposed IDS security policy and all of its rules. This operation cannot be undone.
Retrieves the publish status and any error message for a specific proposed IDS security policy without returning the full policy object. Use this for polling or monitoring IDS security policy publish progress.
Retrieves a paginated list of rules for a specific proposed IDS security policy. Rules are always returned ordered by sequence number ascending. Filtering and sorting parameters in the request body are not applied.
Retrieves detailed information about a specific rule within a proposed IDS security policy.
Updates a rule within a proposed IDS security policy. Writable fields are display_name, description, action, and disabled. The request body must include the current revision value for optimistic concurrency control.
Notes
- Only rules whose proposed_sync_action is CREATE or OVERWRITE are writable; attempting to update a rule with REORDER, SKIP, or DELETE returns an error.
- The request body must include the current revision value for optimistic concurrency control.
- Returns 200 on success
Deletes a rule from a proposed IDS security policy. This operation cannot be undone.
Retrieves a paginated list of infrastructure service categories generated during segmentation analysis. Infrastructure service categories represent proposed NSX infrastructure service categories that can be published.
Retrieves detailed information about a specific infrastructure service category by its unique identifier.
Retrieves a paginated list of default IDS profiles. Results are sorted by display_name.
Notes
- Supports optional filtering by profile_type (ENVIRONMENT or INFRASTRUCTURE).
- Default offset is 0 and default page size is 100.
- Returns 200 on success
Retrieves detailed information about a specific default IDS profile. The profile-id is resolved by UUID first; if no match is found, it is re-tried as a path string.
Updates a default IDS profile. Writable fields are publish_action (to trigger publication), display_name, description, and severities. The request body must include the current revision value for optimistic concurrency control.