@binalyze/air-sdk 5.24.3 → 5.25.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import { type Options as ClientOptions, type Client, type TDataShape } from './client';
2
- import type { CapabilitiesV2ApiControllerGetData, CapabilitiesV2ApiControllerGetResponses, CapabilitiesV2ApiControllerGetErrors, OpenApiAliasV2ApiControllerGetData, OpenApiAliasV2ApiControllerGetResponses, OpenApiAliasV2ApiControllerGetErrors, TasksV2ApiControllerGetTaskByIdData, TasksV2ApiControllerGetTaskByIdResponses, TasksV2ApiControllerGetTaskByIdErrors, TasksV2ApiControllerUpdateTaskData, TasksV2ApiControllerUpdateTaskResponses, TasksV2ApiControllerUpdateTaskErrors, TasksV2ApiControllerListTaskAssetsData, TasksV2ApiControllerListTaskAssetsResponses, TasksV2ApiControllerListTaskAssetsErrors, TasksV2ApiControllerListTaskAssignmentsData, TasksV2ApiControllerListTaskAssignmentsResponses, TasksV2ApiControllerListTaskAssignmentsErrors, TasksTriageV2ApiControllerListHuntTasksData, TasksTriageV2ApiControllerListHuntTasksResponses, TasksTriageV2ApiControllerListHuntTasksErrors, TasksTriageV2ApiControllerCancelData, TasksTriageV2ApiControllerCancelResponses, TasksTriageV2ApiControllerCancelErrors, TasksTriageV2ApiControllerDeleteData, TasksTriageV2ApiControllerDeleteResponses, TasksTriageV2ApiControllerDeleteErrors, TasksTriageV2ApiControllerCancelOneData, TasksTriageV2ApiControllerCancelOneResponses, TasksTriageV2ApiControllerCancelOneErrors, TasksTriageV2ApiControllerDeleteOneData, TasksTriageV2ApiControllerDeleteOneResponses, TasksTriageV2ApiControllerDeleteOneErrors, AcquisitionLibraryDeviceV2ApiControllerListData, AcquisitionLibraryDeviceV2ApiControllerListResponses, AcquisitionLibraryDeviceV2ApiControllerListErrors, AcquisitionLibraryDeviceV2ApiControllerCreateData, AcquisitionLibraryDeviceV2ApiControllerCreateResponses, AcquisitionLibraryDeviceV2ApiControllerCreateErrors, AcquisitionLibraryDeviceV2ApiControllerBulkDeleteData, AcquisitionLibraryDeviceV2ApiControllerBulkDeleteResponses, AcquisitionLibraryDeviceV2ApiControllerBulkDeleteErrors, AcquisitionLibraryDeviceV2ApiControllerDeleteData, AcquisitionLibraryDeviceV2ApiControllerDeleteResponses, AcquisitionLibraryDeviceV2ApiControllerDeleteErrors, AcquisitionLibraryDeviceV2ApiControllerGetData, AcquisitionLibraryDeviceV2ApiControllerGetResponses, AcquisitionLibraryDeviceV2ApiControllerGetErrors, AcquisitionLibraryDeviceV2ApiControllerUpdateData, AcquisitionLibraryDeviceV2ApiControllerUpdateResponses, AcquisitionLibraryDeviceV2ApiControllerUpdateErrors, TriageLibraryV2ApiControllerListData, TriageLibraryV2ApiControllerListResponses, TriageLibraryV2ApiControllerListErrors, TriageLibraryV2ApiControllerCreateData, TriageLibraryV2ApiControllerCreateResponses, TriageLibraryV2ApiControllerCreateErrors, TriageLibraryV2ApiControllerBulkDeleteData, TriageLibraryV2ApiControllerBulkDeleteResponses, TriageLibraryV2ApiControllerBulkDeleteErrors, TriageLibraryV2ApiControllerValidateData, TriageLibraryV2ApiControllerValidateResponses, TriageLibraryV2ApiControllerValidateErrors, TriageLibraryV2ApiControllerDeleteData, TriageLibraryV2ApiControllerDeleteResponses, TriageLibraryV2ApiControllerDeleteErrors, TriageLibraryV2ApiControllerGetData, TriageLibraryV2ApiControllerGetResponses, TriageLibraryV2ApiControllerGetErrors, TriageLibraryV2ApiControllerUpdateData, TriageLibraryV2ApiControllerUpdateResponses, TriageLibraryV2ApiControllerUpdateErrors, TriageLibraryExportV2ApiControllerExportData, TriageLibraryExportV2ApiControllerExportResponses, TriageLibraryExportV2ApiControllerExportErrors, TriageLibraryExportV2ApiControllerDownloadData, TriageLibraryExportV2ApiControllerDownloadResponses, TriageLibraryExportV2ApiControllerDownloadErrors, CaseActivityV2ApiControllerFilterGlobalActivitiesData, CaseActivityV2ApiControllerFilterGlobalActivitiesResponses, CaseActivityV2ApiControllerFilterGlobalActivitiesErrors, CaseActivityV2ApiControllerFilterCaseActivitiesData, CaseActivityV2ApiControllerFilterCaseActivitiesResponses, CaseActivityV2ApiControllerFilterCaseActivitiesErrors, CaseExportV2ApiControllerExportCasesData, CaseExportV2ApiControllerExportCasesResponses, CaseExportV2ApiControllerExportCasesErrors, CaseBulkActionV2ApiControllerCloseData, CaseBulkActionV2ApiControllerCloseResponses, CaseBulkActionV2ApiControllerCloseErrors, CaseBulkActionV2ApiControllerArchiveData, CaseBulkActionV2ApiControllerArchiveResponses, CaseBulkActionV2ApiControllerArchiveErrors, CaseAssetV2ApiControllerFilterAssetsData, CaseAssetV2ApiControllerFilterAssetsResponses, CaseAssetV2ApiControllerFilterAssetsErrors, CaseUserV2ApiControllerFilterUsersData, CaseUserV2ApiControllerFilterUsersResponses, CaseUserV2ApiControllerFilterUsersErrors, CaseTaskV2ApiControllerFilterTasksData, CaseTaskV2ApiControllerFilterTasksResponses, CaseTaskV2ApiControllerFilterTasksErrors, CaseNoteV2ApiControllerFilterNotesData, CaseNoteV2ApiControllerFilterNotesResponses, CaseNoteV2ApiControllerFilterNotesErrors, CaseNoteV2ApiControllerCreateNoteData, CaseNoteV2ApiControllerCreateNoteResponses, CaseNoteV2ApiControllerCreateNoteErrors, CaseNoteV2ApiControllerDeleteNoteData, CaseNoteV2ApiControllerDeleteNoteResponses, CaseNoteV2ApiControllerDeleteNoteErrors, CaseNoteV2ApiControllerUpdateNoteData, CaseNoteV2ApiControllerUpdateNoteResponses, CaseNoteV2ApiControllerUpdateNoteErrors, CaseTaskAssignmentV2ApiControllerFilterTaskAssignmentsData, CaseTaskAssignmentV2ApiControllerFilterTaskAssignmentsResponses, CaseTaskAssignmentV2ApiControllerFilterTaskAssignmentsErrors, CaseTaskAssignmentV2ApiControllerImportTaskAssignmentsData, CaseTaskAssignmentV2ApiControllerImportTaskAssignmentsResponses, CaseTaskAssignmentV2ApiControllerImportTaskAssignmentsErrors, CaseTaskAssignmentV2ApiControllerRemoveTaskAssignmentData, CaseTaskAssignmentV2ApiControllerRemoveTaskAssignmentResponses, CaseTaskAssignmentV2ApiControllerRemoveTaskAssignmentErrors, CaseActionV2ApiControllerCloseData, CaseActionV2ApiControllerCloseResponses, CaseActionV2ApiControllerCloseErrors, CaseActionV2ApiControllerReopenData, CaseActionV2ApiControllerReopenResponses, CaseActionV2ApiControllerReopenErrors, CaseActionV2ApiControllerArchiveData, CaseActionV2ApiControllerArchiveResponses, CaseActionV2ApiControllerArchiveErrors, CaseActionV2ApiControllerRemoveAssetsData, CaseActionV2ApiControllerRemoveAssetsResponses, CaseActionV2ApiControllerRemoveAssetsErrors, CaseV2ApiControllerFilterCasesData, CaseV2ApiControllerFilterCasesResponses, CaseV2ApiControllerFilterCasesErrors, CaseV2ApiControllerCreateCaseData, CaseV2ApiControllerCreateCaseResponses, CaseV2ApiControllerCreateCaseErrors, CaseV2ApiControllerGetCaseByIdOrNameData, CaseV2ApiControllerGetCaseByIdOrNameResponses, CaseV2ApiControllerGetCaseByIdOrNameErrors, CaseV2ApiControllerUpdateCaseData, CaseV2ApiControllerUpdateCaseResponses, CaseV2ApiControllerUpdateCaseErrors, InteractLibrarySnippetV2ApiControllerListData, InteractLibrarySnippetV2ApiControllerListResponses, InteractLibrarySnippetV2ApiControllerListErrors, InteractLibrarySnippetV2ApiControllerCreateData, InteractLibrarySnippetV2ApiControllerCreateResponses, InteractLibrarySnippetV2ApiControllerCreateErrors, InteractLibrarySnippetV2ApiControllerBulkDeleteData, InteractLibrarySnippetV2ApiControllerBulkDeleteResponses, InteractLibrarySnippetV2ApiControllerBulkDeleteErrors, InteractLibrarySnippetV2ApiControllerDeleteData, InteractLibrarySnippetV2ApiControllerDeleteResponses, InteractLibrarySnippetV2ApiControllerDeleteErrors, InteractLibrarySnippetV2ApiControllerGetData, InteractLibrarySnippetV2ApiControllerGetResponses, InteractLibrarySnippetV2ApiControllerGetErrors, InteractLibrarySnippetV2ApiControllerUpdateData, InteractLibrarySnippetV2ApiControllerUpdateResponses, InteractLibrarySnippetV2ApiControllerUpdateErrors, InteractLibraryTagV2ApiControllerListData, InteractLibraryTagV2ApiControllerListResponses, InteractLibraryTagV2ApiControllerListErrors, InteractLibraryTagV2ApiControllerCreateData, InteractLibraryTagV2ApiControllerCreateResponses, InteractLibraryTagV2ApiControllerCreateErrors, InteractLibraryTagV2ApiControllerBulkDeleteData, InteractLibraryTagV2ApiControllerBulkDeleteResponses, InteractLibraryTagV2ApiControllerBulkDeleteErrors, InteractLibraryTagV2ApiControllerDeleteData, InteractLibraryTagV2ApiControllerDeleteResponses, InteractLibraryTagV2ApiControllerDeleteErrors, InteractLibraryTagV2ApiControllerGetData, InteractLibraryTagV2ApiControllerGetResponses, InteractLibraryTagV2ApiControllerGetErrors, InteractLibraryTagV2ApiControllerUpdateData, InteractLibraryTagV2ApiControllerUpdateResponses, InteractLibraryTagV2ApiControllerUpdateErrors, InteractLibraryFileV2ApiControllerListData, InteractLibraryFileV2ApiControllerListResponses, InteractLibraryFileV2ApiControllerListErrors, InteractLibraryFileV2ApiControllerUploadData, InteractLibraryFileV2ApiControllerUploadResponses, InteractLibraryFileV2ApiControllerUploadErrors, InteractLibraryFileV2ApiControllerBulkDeleteData, InteractLibraryFileV2ApiControllerBulkDeleteResponses, InteractLibraryFileV2ApiControllerBulkDeleteErrors, InteractLibraryFileV2ApiControllerDeleteData, InteractLibraryFileV2ApiControllerDeleteResponses, InteractLibraryFileV2ApiControllerDeleteErrors, InteractLibraryFileV2ApiControllerDownloadData, InteractLibraryFileV2ApiControllerDownloadResponses, InteractLibraryFileV2ApiControllerDownloadErrors, InteractCommandV2ApiControllerListData, InteractCommandV2ApiControllerListResponses, InteractCommandV2ApiControllerListErrors, FlagsLibraryV2ApiControllerListData, FlagsLibraryV2ApiControllerListResponses, FlagsLibraryV2ApiControllerListErrors, FlagsLibraryV2ApiControllerCreateData, FlagsLibraryV2ApiControllerCreateResponses, FlagsLibraryV2ApiControllerCreateErrors, FlagsLibraryV2ApiControllerDeleteData, FlagsLibraryV2ApiControllerDeleteResponses, FlagsLibraryV2ApiControllerDeleteErrors, FlagsLibraryV2ApiControllerGetData, FlagsLibraryV2ApiControllerGetResponses, FlagsLibraryV2ApiControllerGetErrors, FlagsLibraryV2ApiControllerUpdateData, FlagsLibraryV2ApiControllerUpdateResponses, FlagsLibraryV2ApiControllerUpdateErrors, InvestigationEvidenceFlagV2ApiControllerFlagEvidenceData, InvestigationEvidenceFlagV2ApiControllerFlagEvidenceResponses, InvestigationEvidenceFlagV2ApiControllerFlagEvidenceErrors, InvestigationEvidenceFlagV2ApiControllerUnflagEvidenceData, InvestigationEvidenceFlagV2ApiControllerUnflagEvidenceResponses, InvestigationEvidenceFlagV2ApiControllerUnflagEvidenceErrors, InvestigationSqlV2ApiControllerGetSchemaData, InvestigationSqlV2ApiControllerGetSchemaResponses, InvestigationSqlV2ApiControllerGetSchemaErrors, InvestigationSqlV2ApiControllerExecuteSqlQueryData, InvestigationSqlV2ApiControllerExecuteSqlQueryResponses, InvestigationSqlV2ApiControllerExecuteSqlQueryErrors, AssetActionV2ApiControllerRebootData, AssetActionV2ApiControllerRebootResponses, AssetActionV2ApiControllerRebootErrors, AssetActionV2ApiControllerShutdownData, AssetActionV2ApiControllerShutdownResponses, AssetActionV2ApiControllerShutdownErrors, AssetActionV2ApiControllerIsolateData, AssetActionV2ApiControllerIsolateResponses, AssetActionV2ApiControllerIsolateErrors, AssetActionV2ApiControllerUnisolateData, AssetActionV2ApiControllerUnisolateResponses, AssetActionV2ApiControllerUnisolateErrors, AssetActionV2ApiControllerRetrieveLogsData, AssetActionV2ApiControllerRetrieveLogsResponses, AssetActionV2ApiControllerRetrieveLogsErrors, AssetActionV2ApiControllerVersionUpdateData, AssetActionV2ApiControllerVersionUpdateResponses, AssetActionV2ApiControllerVersionUpdateErrors, AssetActionV2ApiControllerEnableMaintenanceData, AssetActionV2ApiControllerEnableMaintenanceResponses, AssetActionV2ApiControllerEnableMaintenanceErrors, AssetActionV2ApiControllerDisableMaintenanceData, AssetActionV2ApiControllerDisableMaintenanceResponses, AssetActionV2ApiControllerDisableMaintenanceErrors, AssetActionV2ApiControllerImportPpcToExistingAssetData, AssetActionV2ApiControllerImportPpcToExistingAssetResponses, AssetActionV2ApiControllerImportPpcToExistingAssetErrors, AssetBulkActionV2ApiControllerRebootData, AssetBulkActionV2ApiControllerRebootResponses, AssetBulkActionV2ApiControllerRebootErrors, AssetBulkActionV2ApiControllerShutdownData, AssetBulkActionV2ApiControllerShutdownResponses, AssetBulkActionV2ApiControllerShutdownErrors, AssetBulkActionV2ApiControllerIsolateData, AssetBulkActionV2ApiControllerIsolateResponses, AssetBulkActionV2ApiControllerIsolateErrors, AssetBulkActionV2ApiControllerUnisolateData, AssetBulkActionV2ApiControllerUnisolateResponses, AssetBulkActionV2ApiControllerUnisolateErrors, AssetBulkActionV2ApiControllerRetrieveLogsData, AssetBulkActionV2ApiControllerRetrieveLogsResponses, AssetBulkActionV2ApiControllerRetrieveLogsErrors, AssetBulkActionV2ApiControllerVersionUpdateData, AssetBulkActionV2ApiControllerVersionUpdateResponses, AssetBulkActionV2ApiControllerVersionUpdateErrors, AssetBulkActionV2ApiControllerEnableMaintenanceData, AssetBulkActionV2ApiControllerEnableMaintenanceResponses, AssetBulkActionV2ApiControllerEnableMaintenanceErrors, AssetBulkActionV2ApiControllerDisableMaintenanceData, AssetBulkActionV2ApiControllerDisableMaintenanceResponses, AssetBulkActionV2ApiControllerDisableMaintenanceErrors, AssetBulkMetadataV2ApiControllerAddTagsData, AssetBulkMetadataV2ApiControllerAddTagsResponses, AssetBulkMetadataV2ApiControllerAddTagsErrors, AssetBulkMetadataV2ApiControllerRemoveTagsData, AssetBulkMetadataV2ApiControllerRemoveTagsResponses, AssetBulkMetadataV2ApiControllerRemoveTagsErrors, AssetBulkMetadataV2ApiControllerSetUpdateExclusionData, AssetBulkMetadataV2ApiControllerSetUpdateExclusionResponses, AssetBulkMetadataV2ApiControllerSetUpdateExclusionErrors, AssetBulkMetadataV2ApiControllerSetConnectionRouteData, AssetBulkMetadataV2ApiControllerSetConnectionRouteResponses, AssetBulkMetadataV2ApiControllerSetConnectionRouteErrors, AssetBulkMetadataV2ApiControllerSetMitreDatabaseVersionData, AssetBulkMetadataV2ApiControllerSetMitreDatabaseVersionResponses, AssetBulkMetadataV2ApiControllerSetMitreDatabaseVersionErrors, AssetBulkMetadataV2ApiControllerDeleteAssetsData, AssetBulkMetadataV2ApiControllerDeleteAssetsResponses, AssetBulkMetadataV2ApiControllerDeleteAssetsErrors, AssetBulkMetadataV2ApiControllerImportOffNetworkPpcData, AssetBulkMetadataV2ApiControllerImportOffNetworkPpcResponses, AssetBulkMetadataV2ApiControllerImportOffNetworkPpcErrors, AssetBulkTriageV2ApiControllerRunTriageData, AssetBulkTriageV2ApiControllerRunTriageResponses, AssetBulkTriageV2ApiControllerRunTriageErrors, AssetInteractMessageV2ApiControllerListForAssetData, AssetInteractMessageV2ApiControllerListForAssetResponses, AssetInteractMessageV2ApiControllerListForAssetErrors, AssetInteractV2ApiControllerRunCommandData, AssetInteractV2ApiControllerRunCommandResponses, AssetInteractV2ApiControllerRunCommandErrors, AssetInteractV2ApiControllerCancelCommandData, AssetInteractV2ApiControllerCancelCommandResponses, AssetInteractV2ApiControllerCancelCommandErrors, AssetInteractV2ApiControllerCloseSessionData, AssetInteractV2ApiControllerCloseSessionResponses, AssetInteractV2ApiControllerCloseSessionErrors, AssetV2ApiControllerGetStatsData, AssetV2ApiControllerGetStatsResponses, AssetV2ApiControllerGetStatsErrors, AssetV2ApiControllerExportAssetsData, AssetV2ApiControllerExportAssetsResponses, AssetV2ApiControllerExportAssetsErrors, AssetV2ApiControllerFilterAssetsData, AssetV2ApiControllerFilterAssetsResponses, AssetV2ApiControllerFilterAssetsErrors, AssetV2ApiControllerDeleteAssetData, AssetV2ApiControllerDeleteAssetResponses, AssetV2ApiControllerDeleteAssetErrors, AssetV2ApiControllerGetAssetData, AssetV2ApiControllerGetAssetResponses, AssetV2ApiControllerGetAssetErrors, AssetV2ApiControllerReplaceTagsData, AssetV2ApiControllerReplaceTagsResponses, AssetV2ApiControllerReplaceTagsErrors, AssetV2ApiControllerUpdateLabelData, AssetV2ApiControllerUpdateLabelResponses, AssetV2ApiControllerUpdateLabelErrors, AssetTriageV2ApiControllerFilterTriageTasksData, AssetTriageV2ApiControllerFilterTriageTasksResponses, AssetTriageV2ApiControllerFilterTriageTasksErrors, AssetTriageV2ApiControllerRunTriageData, AssetTriageV2ApiControllerRunTriageResponses, AssetTriageV2ApiControllerRunTriageErrors, AssetTriageV2ApiControllerCancelTriageData, AssetTriageV2ApiControllerCancelTriageResponses, AssetTriageV2ApiControllerCancelTriageErrors, AssetTriageV2ApiControllerDeleteTriageAssignmentData, AssetTriageV2ApiControllerDeleteTriageAssignmentResponses, AssetTriageV2ApiControllerDeleteTriageAssignmentErrors, AssetAcquisitionV2ApiControllerAcquireData, AssetAcquisitionV2ApiControllerAcquireResponses, AssetAcquisitionV2ApiControllerAcquireErrors, AssetAcquisitionV2ApiControllerCancelAcquisitionData, AssetAcquisitionV2ApiControllerCancelAcquisitionResponses, AssetAcquisitionV2ApiControllerCancelAcquisitionErrors, AssetAcquisitionV2ApiControllerDeleteAcquisitionAssignmentData, AssetAcquisitionV2ApiControllerDeleteAcquisitionAssignmentResponses, AssetAcquisitionV2ApiControllerDeleteAcquisitionAssignmentErrors, AssetAcquisitionV2ApiControllerFilterAcquisitionTasksData, AssetAcquisitionV2ApiControllerFilterAcquisitionTasksResponses, AssetAcquisitionV2ApiControllerFilterAcquisitionTasksErrors, AssetInteractMessageV2ApiControllerListSessionsForAssetData, AssetInteractMessageV2ApiControllerListSessionsForAssetResponses, AssetInteractMessageV2ApiControllerListSessionsForAssetErrors, AssetInteractMessageV2ApiControllerGetMessageData, AssetInteractMessageV2ApiControllerGetMessageResponses, AssetInteractMessageV2ApiControllerGetMessageErrors, AssetInteractMessageV2ApiControllerDownloadMessageOutputData, AssetInteractMessageV2ApiControllerDownloadMessageOutputResponses, AssetInteractMessageV2ApiControllerDownloadMessageOutputErrors, AssetInteractMessageV2ApiControllerGetSessionReportData, AssetInteractMessageV2ApiControllerGetSessionReportResponses, AssetInteractMessageV2ApiControllerGetSessionReportErrors, CloudAcquisitionLibraryApiControllerListData, CloudAcquisitionLibraryApiControllerListResponses, CloudAcquisitionLibraryApiControllerListErrors, CloudAcquisitionLibraryApiControllerCreateData, CloudAcquisitionLibraryApiControllerCreateResponses, CloudAcquisitionLibraryApiControllerCreateErrors, CloudAcquisitionLibraryApiControllerBulkDeleteData, CloudAcquisitionLibraryApiControllerBulkDeleteResponses, CloudAcquisitionLibraryApiControllerBulkDeleteErrors, CloudAcquisitionLibraryApiControllerDeleteData, CloudAcquisitionLibraryApiControllerDeleteResponses, CloudAcquisitionLibraryApiControllerDeleteErrors, CloudAcquisitionLibraryApiControllerGetData, CloudAcquisitionLibraryApiControllerGetResponses, CloudAcquisitionLibraryApiControllerGetErrors, CloudAcquisitionLibraryApiControllerUpdateData, CloudAcquisitionLibraryApiControllerUpdateResponses, CloudAcquisitionLibraryApiControllerUpdateErrors, DiskImageAcquisitionLibraryApiControllerListData, DiskImageAcquisitionLibraryApiControllerListResponses, DiskImageAcquisitionLibraryApiControllerListErrors, DiskImageAcquisitionLibraryApiControllerCreateData, DiskImageAcquisitionLibraryApiControllerCreateResponses, DiskImageAcquisitionLibraryApiControllerCreateErrors, DiskImageAcquisitionLibraryApiControllerBulkDeleteData, DiskImageAcquisitionLibraryApiControllerBulkDeleteResponses, DiskImageAcquisitionLibraryApiControllerBulkDeleteErrors, DiskImageAcquisitionLibraryApiControllerDeleteData, DiskImageAcquisitionLibraryApiControllerDeleteResponses, DiskImageAcquisitionLibraryApiControllerDeleteErrors, DiskImageAcquisitionLibraryApiControllerGetData, DiskImageAcquisitionLibraryApiControllerGetResponses, DiskImageAcquisitionLibraryApiControllerGetErrors, DiskImageAcquisitionLibraryApiControllerUpdateData, DiskImageAcquisitionLibraryApiControllerUpdateResponses, DiskImageAcquisitionLibraryApiControllerUpdateErrors } from './types.gen';
2
+ import type { CapabilitiesV2ApiControllerGetData, CapabilitiesV2ApiControllerGetResponses, CapabilitiesV2ApiControllerGetErrors, OpenApiAliasV2ApiControllerGetData, OpenApiAliasV2ApiControllerGetResponses, OpenApiAliasV2ApiControllerGetErrors, TasksV2ApiControllerGetTaskByIdData, TasksV2ApiControllerGetTaskByIdResponses, TasksV2ApiControllerGetTaskByIdErrors, TasksV2ApiControllerUpdateTaskData, TasksV2ApiControllerUpdateTaskResponses, TasksV2ApiControllerUpdateTaskErrors, TasksV2ApiControllerListTaskAssetsData, TasksV2ApiControllerListTaskAssetsResponses, TasksV2ApiControllerListTaskAssetsErrors, TasksV2ApiControllerListTaskAssignmentsData, TasksV2ApiControllerListTaskAssignmentsResponses, TasksV2ApiControllerListTaskAssignmentsErrors, TasksTriageV2ApiControllerListHuntTasksData, TasksTriageV2ApiControllerListHuntTasksResponses, TasksTriageV2ApiControllerListHuntTasksErrors, TasksTriageV2ApiControllerCancelData, TasksTriageV2ApiControllerCancelResponses, TasksTriageV2ApiControllerCancelErrors, TasksTriageV2ApiControllerDeleteData, TasksTriageV2ApiControllerDeleteResponses, TasksTriageV2ApiControllerDeleteErrors, TasksTriageV2ApiControllerCancelOneData, TasksTriageV2ApiControllerCancelOneResponses, TasksTriageV2ApiControllerCancelOneErrors, TasksTriageV2ApiControllerDeleteOneData, TasksTriageV2ApiControllerDeleteOneResponses, TasksTriageV2ApiControllerDeleteOneErrors, AcquisitionLibraryDeviceV2ApiControllerListData, AcquisitionLibraryDeviceV2ApiControllerListResponses, AcquisitionLibraryDeviceV2ApiControllerListErrors, AcquisitionLibraryDeviceV2ApiControllerCreateData, AcquisitionLibraryDeviceV2ApiControllerCreateResponses, AcquisitionLibraryDeviceV2ApiControllerCreateErrors, AcquisitionLibraryDeviceV2ApiControllerBulkDeleteData, AcquisitionLibraryDeviceV2ApiControllerBulkDeleteResponses, AcquisitionLibraryDeviceV2ApiControllerBulkDeleteErrors, AcquisitionLibraryDeviceV2ApiControllerDeleteData, AcquisitionLibraryDeviceV2ApiControllerDeleteResponses, AcquisitionLibraryDeviceV2ApiControllerDeleteErrors, AcquisitionLibraryDeviceV2ApiControllerGetData, AcquisitionLibraryDeviceV2ApiControllerGetResponses, AcquisitionLibraryDeviceV2ApiControllerGetErrors, AcquisitionLibraryDeviceV2ApiControllerUpdateData, AcquisitionLibraryDeviceV2ApiControllerUpdateResponses, AcquisitionLibraryDeviceV2ApiControllerUpdateErrors, TriageLibraryV2ApiControllerListData, TriageLibraryV2ApiControllerListResponses, TriageLibraryV2ApiControllerListErrors, TriageLibraryV2ApiControllerCreateData, TriageLibraryV2ApiControllerCreateResponses, TriageLibraryV2ApiControllerCreateErrors, TriageLibraryV2ApiControllerBulkDeleteData, TriageLibraryV2ApiControllerBulkDeleteResponses, TriageLibraryV2ApiControllerBulkDeleteErrors, TriageLibraryV2ApiControllerValidateData, TriageLibraryV2ApiControllerValidateResponses, TriageLibraryV2ApiControllerValidateErrors, TriageLibraryV2ApiControllerDeleteData, TriageLibraryV2ApiControllerDeleteResponses, TriageLibraryV2ApiControllerDeleteErrors, TriageLibraryV2ApiControllerGetData, TriageLibraryV2ApiControllerGetResponses, TriageLibraryV2ApiControllerGetErrors, TriageLibraryV2ApiControllerUpdateData, TriageLibraryV2ApiControllerUpdateResponses, TriageLibraryV2ApiControllerUpdateErrors, TriageLibraryExportV2ApiControllerExportData, TriageLibraryExportV2ApiControllerExportResponses, TriageLibraryExportV2ApiControllerExportErrors, TriageLibraryExportV2ApiControllerDownloadData, TriageLibraryExportV2ApiControllerDownloadResponses, TriageLibraryExportV2ApiControllerDownloadErrors, OrganizationUserV2ApiControllerListOrganizationUsersData, OrganizationUserV2ApiControllerListOrganizationUsersResponses, OrganizationUserV2ApiControllerListOrganizationUsersErrors, OrganizationV2ApiControllerListOrganizationsData, OrganizationV2ApiControllerListOrganizationsResponses, OrganizationV2ApiControllerListOrganizationsErrors, OrganizationV2ApiControllerGetOrganizationByIdOrNameData, OrganizationV2ApiControllerGetOrganizationByIdOrNameResponses, OrganizationV2ApiControllerGetOrganizationByIdOrNameErrors, CaseActivityV2ApiControllerFilterGlobalActivitiesData, CaseActivityV2ApiControllerFilterGlobalActivitiesResponses, CaseActivityV2ApiControllerFilterGlobalActivitiesErrors, CaseActivityV2ApiControllerFilterCaseActivitiesData, CaseActivityV2ApiControllerFilterCaseActivitiesResponses, CaseActivityV2ApiControllerFilterCaseActivitiesErrors, CaseExportV2ApiControllerExportCasesData, CaseExportV2ApiControllerExportCasesResponses, CaseExportV2ApiControllerExportCasesErrors, CaseBulkActionV2ApiControllerCloseData, CaseBulkActionV2ApiControllerCloseResponses, CaseBulkActionV2ApiControllerCloseErrors, CaseBulkActionV2ApiControllerArchiveData, CaseBulkActionV2ApiControllerArchiveResponses, CaseBulkActionV2ApiControllerArchiveErrors, CaseAssetV2ApiControllerFilterAssetsData, CaseAssetV2ApiControllerFilterAssetsResponses, CaseAssetV2ApiControllerFilterAssetsErrors, CaseUserV2ApiControllerFilterUsersData, CaseUserV2ApiControllerFilterUsersResponses, CaseUserV2ApiControllerFilterUsersErrors, CaseTaskV2ApiControllerFilterTasksData, CaseTaskV2ApiControllerFilterTasksResponses, CaseTaskV2ApiControllerFilterTasksErrors, CaseNoteV2ApiControllerFilterNotesData, CaseNoteV2ApiControllerFilterNotesResponses, CaseNoteV2ApiControllerFilterNotesErrors, CaseNoteV2ApiControllerCreateNoteData, CaseNoteV2ApiControllerCreateNoteResponses, CaseNoteV2ApiControllerCreateNoteErrors, CaseNoteV2ApiControllerDeleteNoteData, CaseNoteV2ApiControllerDeleteNoteResponses, CaseNoteV2ApiControllerDeleteNoteErrors, CaseNoteV2ApiControllerUpdateNoteData, CaseNoteV2ApiControllerUpdateNoteResponses, CaseNoteV2ApiControllerUpdateNoteErrors, CaseTaskAssignmentV2ApiControllerFilterTaskAssignmentsData, CaseTaskAssignmentV2ApiControllerFilterTaskAssignmentsResponses, CaseTaskAssignmentV2ApiControllerFilterTaskAssignmentsErrors, CaseTaskAssignmentV2ApiControllerImportTaskAssignmentsData, CaseTaskAssignmentV2ApiControllerImportTaskAssignmentsResponses, CaseTaskAssignmentV2ApiControllerImportTaskAssignmentsErrors, CaseTaskAssignmentV2ApiControllerRemoveTaskAssignmentData, CaseTaskAssignmentV2ApiControllerRemoveTaskAssignmentResponses, CaseTaskAssignmentV2ApiControllerRemoveTaskAssignmentErrors, CaseActionV2ApiControllerCloseData, CaseActionV2ApiControllerCloseResponses, CaseActionV2ApiControllerCloseErrors, CaseActionV2ApiControllerReopenData, CaseActionV2ApiControllerReopenResponses, CaseActionV2ApiControllerReopenErrors, CaseActionV2ApiControllerArchiveData, CaseActionV2ApiControllerArchiveResponses, CaseActionV2ApiControllerArchiveErrors, CaseActionV2ApiControllerRemoveAssetsData, CaseActionV2ApiControllerRemoveAssetsResponses, CaseActionV2ApiControllerRemoveAssetsErrors, CaseV2ApiControllerFilterCasesData, CaseV2ApiControllerFilterCasesResponses, CaseV2ApiControllerFilterCasesErrors, CaseV2ApiControllerCreateCaseData, CaseV2ApiControllerCreateCaseResponses, CaseV2ApiControllerCreateCaseErrors, CaseV2ApiControllerGetCaseByIdOrNameData, CaseV2ApiControllerGetCaseByIdOrNameResponses, CaseV2ApiControllerGetCaseByIdOrNameErrors, CaseV2ApiControllerUpdateCaseData, CaseV2ApiControllerUpdateCaseResponses, CaseV2ApiControllerUpdateCaseErrors, InteractLibrarySnippetV2ApiControllerListData, InteractLibrarySnippetV2ApiControllerListResponses, InteractLibrarySnippetV2ApiControllerListErrors, InteractLibrarySnippetV2ApiControllerCreateData, InteractLibrarySnippetV2ApiControllerCreateResponses, InteractLibrarySnippetV2ApiControllerCreateErrors, InteractLibrarySnippetV2ApiControllerBulkDeleteData, InteractLibrarySnippetV2ApiControllerBulkDeleteResponses, InteractLibrarySnippetV2ApiControllerBulkDeleteErrors, InteractLibrarySnippetV2ApiControllerDeleteData, InteractLibrarySnippetV2ApiControllerDeleteResponses, InteractLibrarySnippetV2ApiControllerDeleteErrors, InteractLibrarySnippetV2ApiControllerGetData, InteractLibrarySnippetV2ApiControllerGetResponses, InteractLibrarySnippetV2ApiControllerGetErrors, InteractLibrarySnippetV2ApiControllerUpdateData, InteractLibrarySnippetV2ApiControllerUpdateResponses, InteractLibrarySnippetV2ApiControllerUpdateErrors, InteractLibraryTagV2ApiControllerListData, InteractLibraryTagV2ApiControllerListResponses, InteractLibraryTagV2ApiControllerListErrors, InteractLibraryTagV2ApiControllerCreateData, InteractLibraryTagV2ApiControllerCreateResponses, InteractLibraryTagV2ApiControllerCreateErrors, InteractLibraryTagV2ApiControllerBulkDeleteData, InteractLibraryTagV2ApiControllerBulkDeleteResponses, InteractLibraryTagV2ApiControllerBulkDeleteErrors, InteractLibraryTagV2ApiControllerDeleteData, InteractLibraryTagV2ApiControllerDeleteResponses, InteractLibraryTagV2ApiControllerDeleteErrors, InteractLibraryTagV2ApiControllerGetData, InteractLibraryTagV2ApiControllerGetResponses, InteractLibraryTagV2ApiControllerGetErrors, InteractLibraryTagV2ApiControllerUpdateData, InteractLibraryTagV2ApiControllerUpdateResponses, InteractLibraryTagV2ApiControllerUpdateErrors, InteractLibraryFileV2ApiControllerListData, InteractLibraryFileV2ApiControllerListResponses, InteractLibraryFileV2ApiControllerListErrors, InteractLibraryFileV2ApiControllerUploadData, InteractLibraryFileV2ApiControllerUploadResponses, InteractLibraryFileV2ApiControllerUploadErrors, InteractLibraryFileV2ApiControllerBulkDeleteData, InteractLibraryFileV2ApiControllerBulkDeleteResponses, InteractLibraryFileV2ApiControllerBulkDeleteErrors, InteractLibraryFileV2ApiControllerDeleteData, InteractLibraryFileV2ApiControllerDeleteResponses, InteractLibraryFileV2ApiControllerDeleteErrors, InteractLibraryFileV2ApiControllerDownloadData, InteractLibraryFileV2ApiControllerDownloadResponses, InteractLibraryFileV2ApiControllerDownloadErrors, InteractCommandV2ApiControllerListData, InteractCommandV2ApiControllerListResponses, InteractCommandV2ApiControllerListErrors, FlagsLibraryV2ApiControllerListData, FlagsLibraryV2ApiControllerListResponses, FlagsLibraryV2ApiControllerListErrors, FlagsLibraryV2ApiControllerCreateData, FlagsLibraryV2ApiControllerCreateResponses, FlagsLibraryV2ApiControllerCreateErrors, FlagsLibraryV2ApiControllerDeleteData, FlagsLibraryV2ApiControllerDeleteResponses, FlagsLibraryV2ApiControllerDeleteErrors, FlagsLibraryV2ApiControllerGetData, FlagsLibraryV2ApiControllerGetResponses, FlagsLibraryV2ApiControllerGetErrors, FlagsLibraryV2ApiControllerUpdateData, FlagsLibraryV2ApiControllerUpdateResponses, FlagsLibraryV2ApiControllerUpdateErrors, InvestigationEvidenceFlagV2ApiControllerFlagEvidenceData, InvestigationEvidenceFlagV2ApiControllerFlagEvidenceResponses, InvestigationEvidenceFlagV2ApiControllerFlagEvidenceErrors, InvestigationEvidenceFlagV2ApiControllerUnflagEvidenceData, InvestigationEvidenceFlagV2ApiControllerUnflagEvidenceResponses, InvestigationEvidenceFlagV2ApiControllerUnflagEvidenceErrors, InvestigationSqlV2ApiControllerGetSchemaData, InvestigationSqlV2ApiControllerGetSchemaResponses, InvestigationSqlV2ApiControllerGetSchemaErrors, InvestigationSqlV2ApiControllerExecuteSqlQueryData, InvestigationSqlV2ApiControllerExecuteSqlQueryResponses, InvestigationSqlV2ApiControllerExecuteSqlQueryErrors, AssetActionV2ApiControllerRebootData, AssetActionV2ApiControllerRebootResponses, AssetActionV2ApiControllerRebootErrors, AssetActionV2ApiControllerShutdownData, AssetActionV2ApiControllerShutdownResponses, AssetActionV2ApiControllerShutdownErrors, AssetActionV2ApiControllerIsolateData, AssetActionV2ApiControllerIsolateResponses, AssetActionV2ApiControllerIsolateErrors, AssetActionV2ApiControllerUnisolateData, AssetActionV2ApiControllerUnisolateResponses, AssetActionV2ApiControllerUnisolateErrors, AssetActionV2ApiControllerRetrieveLogsData, AssetActionV2ApiControllerRetrieveLogsResponses, AssetActionV2ApiControllerRetrieveLogsErrors, AssetActionV2ApiControllerVersionUpdateData, AssetActionV2ApiControllerVersionUpdateResponses, AssetActionV2ApiControllerVersionUpdateErrors, AssetActionV2ApiControllerEnableMaintenanceData, AssetActionV2ApiControllerEnableMaintenanceResponses, AssetActionV2ApiControllerEnableMaintenanceErrors, AssetActionV2ApiControllerDisableMaintenanceData, AssetActionV2ApiControllerDisableMaintenanceResponses, AssetActionV2ApiControllerDisableMaintenanceErrors, AssetActionV2ApiControllerImportPpcToExistingAssetData, AssetActionV2ApiControllerImportPpcToExistingAssetResponses, AssetActionV2ApiControllerImportPpcToExistingAssetErrors, AssetBulkActionV2ApiControllerRebootData, AssetBulkActionV2ApiControllerRebootResponses, AssetBulkActionV2ApiControllerRebootErrors, AssetBulkActionV2ApiControllerShutdownData, AssetBulkActionV2ApiControllerShutdownResponses, AssetBulkActionV2ApiControllerShutdownErrors, AssetBulkActionV2ApiControllerIsolateData, AssetBulkActionV2ApiControllerIsolateResponses, AssetBulkActionV2ApiControllerIsolateErrors, AssetBulkActionV2ApiControllerUnisolateData, AssetBulkActionV2ApiControllerUnisolateResponses, AssetBulkActionV2ApiControllerUnisolateErrors, AssetBulkActionV2ApiControllerRetrieveLogsData, AssetBulkActionV2ApiControllerRetrieveLogsResponses, AssetBulkActionV2ApiControllerRetrieveLogsErrors, AssetBulkActionV2ApiControllerVersionUpdateData, AssetBulkActionV2ApiControllerVersionUpdateResponses, AssetBulkActionV2ApiControllerVersionUpdateErrors, AssetBulkActionV2ApiControllerEnableMaintenanceData, AssetBulkActionV2ApiControllerEnableMaintenanceResponses, AssetBulkActionV2ApiControllerEnableMaintenanceErrors, AssetBulkActionV2ApiControllerDisableMaintenanceData, AssetBulkActionV2ApiControllerDisableMaintenanceResponses, AssetBulkActionV2ApiControllerDisableMaintenanceErrors, AssetBulkMetadataV2ApiControllerAddTagsData, AssetBulkMetadataV2ApiControllerAddTagsResponses, AssetBulkMetadataV2ApiControllerAddTagsErrors, AssetBulkMetadataV2ApiControllerRemoveTagsData, AssetBulkMetadataV2ApiControllerRemoveTagsResponses, AssetBulkMetadataV2ApiControllerRemoveTagsErrors, AssetBulkMetadataV2ApiControllerSetUpdateExclusionData, AssetBulkMetadataV2ApiControllerSetUpdateExclusionResponses, AssetBulkMetadataV2ApiControllerSetUpdateExclusionErrors, AssetBulkMetadataV2ApiControllerSetConnectionRouteData, AssetBulkMetadataV2ApiControllerSetConnectionRouteResponses, AssetBulkMetadataV2ApiControllerSetConnectionRouteErrors, AssetBulkMetadataV2ApiControllerSetMitreDatabaseVersionData, AssetBulkMetadataV2ApiControllerSetMitreDatabaseVersionResponses, AssetBulkMetadataV2ApiControllerSetMitreDatabaseVersionErrors, AssetBulkMetadataV2ApiControllerDeleteAssetsData, AssetBulkMetadataV2ApiControllerDeleteAssetsResponses, AssetBulkMetadataV2ApiControllerDeleteAssetsErrors, AssetBulkMetadataV2ApiControllerImportOffNetworkPpcData, AssetBulkMetadataV2ApiControllerImportOffNetworkPpcResponses, AssetBulkMetadataV2ApiControllerImportOffNetworkPpcErrors, AssetBulkTriageV2ApiControllerRunTriageData, AssetBulkTriageV2ApiControllerRunTriageResponses, AssetBulkTriageV2ApiControllerRunTriageErrors, AssetInteractMessageV2ApiControllerListForAssetData, AssetInteractMessageV2ApiControllerListForAssetResponses, AssetInteractMessageV2ApiControllerListForAssetErrors, AssetInteractV2ApiControllerRunCommandData, AssetInteractV2ApiControllerRunCommandResponses, AssetInteractV2ApiControllerRunCommandErrors, AssetInteractV2ApiControllerCancelCommandData, AssetInteractV2ApiControllerCancelCommandResponses, AssetInteractV2ApiControllerCancelCommandErrors, AssetInteractV2ApiControllerCloseSessionData, AssetInteractV2ApiControllerCloseSessionResponses, AssetInteractV2ApiControllerCloseSessionErrors, AssetV2ApiControllerGetStatsData, AssetV2ApiControllerGetStatsResponses, AssetV2ApiControllerGetStatsErrors, AssetV2ApiControllerExportAssetsData, AssetV2ApiControllerExportAssetsResponses, AssetV2ApiControllerExportAssetsErrors, AssetV2ApiControllerFilterAssetsData, AssetV2ApiControllerFilterAssetsResponses, AssetV2ApiControllerFilterAssetsErrors, AssetV2ApiControllerDeleteAssetData, AssetV2ApiControllerDeleteAssetResponses, AssetV2ApiControllerDeleteAssetErrors, AssetV2ApiControllerGetAssetData, AssetV2ApiControllerGetAssetResponses, AssetV2ApiControllerGetAssetErrors, AssetV2ApiControllerReplaceTagsData, AssetV2ApiControllerReplaceTagsResponses, AssetV2ApiControllerReplaceTagsErrors, AssetV2ApiControllerUpdateLabelData, AssetV2ApiControllerUpdateLabelResponses, AssetV2ApiControllerUpdateLabelErrors, AssetTriageV2ApiControllerFilterTriageTasksData, AssetTriageV2ApiControllerFilterTriageTasksResponses, AssetTriageV2ApiControllerFilterTriageTasksErrors, AssetTriageV2ApiControllerRunTriageData, AssetTriageV2ApiControllerRunTriageResponses, AssetTriageV2ApiControllerRunTriageErrors, AssetTriageV2ApiControllerCancelTriageData, AssetTriageV2ApiControllerCancelTriageResponses, AssetTriageV2ApiControllerCancelTriageErrors, AssetTriageV2ApiControllerDeleteTriageAssignmentData, AssetTriageV2ApiControllerDeleteTriageAssignmentResponses, AssetTriageV2ApiControllerDeleteTriageAssignmentErrors, AssetAcquisitionV2ApiControllerAcquireData, AssetAcquisitionV2ApiControllerAcquireResponses, AssetAcquisitionV2ApiControllerAcquireErrors, AssetAcquisitionV2ApiControllerCancelAcquisitionData, AssetAcquisitionV2ApiControllerCancelAcquisitionResponses, AssetAcquisitionV2ApiControllerCancelAcquisitionErrors, AssetAcquisitionV2ApiControllerDeleteAcquisitionAssignmentData, AssetAcquisitionV2ApiControllerDeleteAcquisitionAssignmentResponses, AssetAcquisitionV2ApiControllerDeleteAcquisitionAssignmentErrors, AssetAcquisitionV2ApiControllerFilterAcquisitionTasksData, AssetAcquisitionV2ApiControllerFilterAcquisitionTasksResponses, AssetAcquisitionV2ApiControllerFilterAcquisitionTasksErrors, AssetInteractMessageV2ApiControllerListSessionsForAssetData, AssetInteractMessageV2ApiControllerListSessionsForAssetResponses, AssetInteractMessageV2ApiControllerListSessionsForAssetErrors, AssetInteractMessageV2ApiControllerGetMessageData, AssetInteractMessageV2ApiControllerGetMessageResponses, AssetInteractMessageV2ApiControllerGetMessageErrors, AssetInteractMessageV2ApiControllerDownloadMessageOutputData, AssetInteractMessageV2ApiControllerDownloadMessageOutputResponses, AssetInteractMessageV2ApiControllerDownloadMessageOutputErrors, AssetInteractMessageV2ApiControllerGetSessionReportData, AssetInteractMessageV2ApiControllerGetSessionReportResponses, AssetInteractMessageV2ApiControllerGetSessionReportErrors, CloudAcquisitionLibraryApiControllerListData, CloudAcquisitionLibraryApiControllerListResponses, CloudAcquisitionLibraryApiControllerListErrors, CloudAcquisitionLibraryApiControllerCreateData, CloudAcquisitionLibraryApiControllerCreateResponses, CloudAcquisitionLibraryApiControllerCreateErrors, CloudAcquisitionLibraryApiControllerBulkDeleteData, CloudAcquisitionLibraryApiControllerBulkDeleteResponses, CloudAcquisitionLibraryApiControllerBulkDeleteErrors, CloudAcquisitionLibraryApiControllerDeleteData, CloudAcquisitionLibraryApiControllerDeleteResponses, CloudAcquisitionLibraryApiControllerDeleteErrors, CloudAcquisitionLibraryApiControllerGetData, CloudAcquisitionLibraryApiControllerGetResponses, CloudAcquisitionLibraryApiControllerGetErrors, CloudAcquisitionLibraryApiControllerUpdateData, CloudAcquisitionLibraryApiControllerUpdateResponses, CloudAcquisitionLibraryApiControllerUpdateErrors, DiskImageAcquisitionLibraryApiControllerListData, DiskImageAcquisitionLibraryApiControllerListResponses, DiskImageAcquisitionLibraryApiControllerListErrors, DiskImageAcquisitionLibraryApiControllerCreateData, DiskImageAcquisitionLibraryApiControllerCreateResponses, DiskImageAcquisitionLibraryApiControllerCreateErrors, DiskImageAcquisitionLibraryApiControllerBulkDeleteData, DiskImageAcquisitionLibraryApiControllerBulkDeleteResponses, DiskImageAcquisitionLibraryApiControllerBulkDeleteErrors, DiskImageAcquisitionLibraryApiControllerDeleteData, DiskImageAcquisitionLibraryApiControllerDeleteResponses, DiskImageAcquisitionLibraryApiControllerDeleteErrors, DiskImageAcquisitionLibraryApiControllerGetData, DiskImageAcquisitionLibraryApiControllerGetResponses, DiskImageAcquisitionLibraryApiControllerGetErrors, DiskImageAcquisitionLibraryApiControllerUpdateData, DiskImageAcquisitionLibraryApiControllerUpdateResponses, DiskImageAcquisitionLibraryApiControllerUpdateErrors } from './types.gen';
3
3
  export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = ClientOptions<TData, ThrowOnError> & {
4
4
  /**
5
5
  * You can provide a client instance returned by `createClient()` instead of
@@ -25,362 +25,377 @@ export declare const capabilitiesV2ApiControllerGet: <ThrowOnError extends boole
25
25
  export declare const openApiAliasV2ApiControllerGet: <ThrowOnError extends boolean = false>(options?: Options<OpenApiAliasV2ApiControllerGetData, ThrowOnError>) => import("./client").RequestResult<OpenApiAliasV2ApiControllerGetResponses, OpenApiAliasV2ApiControllerGetErrors, ThrowOnError>;
26
26
  /**
27
27
  * Get task by id
28
- * Fetch one Binalyze AIR task by UUID using GET /api/v2/tasks/{taskId}. Type-independent: works for triage, acquisition, interactShell and other task types. The response wraps the single task in result.entities[0] and is polymorphic: it carries a type/subtype discriminator plus only the matching domain block (triage{} / acquisition{} / interactShell{}); other blocks are absent, not null. It also returns counts{assigned,completed,failed,cancelled}, organizations[{id,name}], cases[], schedule (null when not scheduled) and taskAssignments{taskAssignmentCount,taskAssignmentsUrl}. Use air-tasks-assignments for the full per-endpoint assignment list and air-tasks-assets for the targeted assets. Only a task UUID is accepted; names and hostnames are rejected. A 404 'Task not found' also covers tasks outside the caller's organizations (leak-safe), so do not infer the task does not exist.
28
+ * Fetches one task by UUID, regardless of task type (triage, acquisition, interactShell, ...). Returns the task in `result.entities[0]` with status counts, owning organizations, linked cases, schedule and the type-specific domain block.
29
29
  */
30
30
  export declare const tasksV2ApiControllerGetTaskById: <ThrowOnError extends boolean = false>(options: Options<TasksV2ApiControllerGetTaskByIdData, ThrowOnError>) => import("./client").RequestResult<TasksV2ApiControllerGetTaskByIdResponses, TasksV2ApiControllerGetTaskByIdErrors, ThrowOnError>;
31
31
  /**
32
32
  * Update a task (rename + schedule; dryRun query preview)
33
- * Update one Binalyze AIR task via PATCH /api/v2/tasks/{taskId}. MUTATING. Send only the fields the user wants to change. Scheduled tasks (status=scheduled) accept all fields: taskName, caseIdOrName, schedule, ruleIds (triage), assets, profileIdOrName (acquisition), mitreEnabled, droneEnabled, eventLogRecordsConfig, cpuLimit, imageOptions (image acquisition). Tasks in any other status (processing, assigned, completed, cancelled, failed) accept only taskName and caseIdOrName; every other field is NOT applied -- the call still returns 200 but the field comes back in skippedFields (e.g. 'cpuLimit cannot be updated for processing task; skipped'). This is by design, not an error: a running task cannot change its execution config. When skippedFields is non-empty, tell the user which fields were skipped and why, and that scheduled-only fields require the task to be in status=scheduled (check with air-tasks-get first if unsure). Unschedule is forbidden: never send schedule=null; to stop a task use the hunt cancel/delete tools instead. Renaming to the same name fails 400. An empty body returns errors[0] NOTHING_CHANGED. 404 'Task not found' also covers tasks outside the caller's organizations (leak-safe). The success response returns the updated task in result.entities[0], same shape as air-tasks-get.
33
+ * Updates one task; send only the fields to change. Tasks in `scheduled` status accept the full field set (name, case link, schedule and execution config); tasks in any other status accept only `taskName` and `caseIdOrName`, and other fields are skipped and reported in the errors list. Returns the updated task in `result.entities[0]`.
34
34
  */
35
35
  export declare const tasksV2ApiControllerUpdateTask: <ThrowOnError extends boolean = false>(options: Options<TasksV2ApiControllerUpdateTaskData, ThrowOnError>) => import("./client").RequestResult<TasksV2ApiControllerUpdateTaskResponses, TasksV2ApiControllerUpdateTaskErrors, ThrowOnError>;
36
36
  /**
37
37
  * List a task assets
38
- * List the assets targeted by one Binalyze AIR task using GET /api/v2/tasks/{taskId}/assets. Paginated; entities use the same shape as GET /api/v2/assets (endpoint block with platform, onlineStatus, lastSeen, etc.). Use this when the user asks which hosts/assets a task ran on or targets; this is the resolver for the assetsUrl field seen in task and hunt list responses. It does NOT include per-asset assignment status or progress; for that use air-tasks-assignments. 404 'Task not found' also covers tasks outside the caller's organizations (leak-safe). Placeholder defaults such as pageNumber=1 or pageSize=20 are ignored.
38
+ * Lists the assets targeted by one task. Supports offset pagination and the same `filter[field]` querying as GET /api/v2/assets; entities use the asset shape from that endpoint. Per-asset assignment status lives on the task-assignments endpoint instead.
39
39
  */
40
40
  export declare const tasksV2ApiControllerListTaskAssets: <ThrowOnError extends boolean = false>(options: Options<TasksV2ApiControllerListTaskAssetsData, ThrowOnError>) => import("./client").RequestResult<TasksV2ApiControllerListTaskAssetsResponses, TasksV2ApiControllerListTaskAssetsErrors, ThrowOnError>;
41
41
  /**
42
42
  * List a task assignments
43
- * List the per-endpoint task assignments of one Binalyze AIR task using GET /api/v2/tasks/{taskId}/task-assignments. Paginated; this is the resolver for the taskAssignmentsUrl field in task detail responses. Each entity carries id, taskId, name, type, endpointId, endpointName, status, progress, hasDroneData, durations, metadata, organizations[{id,name}], response and cases[]. Use this when the user wants per-host progress, per-host status, or which endpoints completed/failed for a task; use air-tasks-assets for asset details instead. 404 'Task not found' also covers tasks outside the caller's organizations (leak-safe). Placeholder defaults such as pageNumber=1 are ignored.
43
+ * Lists the per-endpoint task assignments of one task. Supports offset pagination and `filter[field]` querying; each entity carries the assignment status, progress, durations, endpoint reference, organizations and linked cases.
44
44
  */
45
45
  export declare const tasksV2ApiControllerListTaskAssignments: <ThrowOnError extends boolean = false>(options: Options<TasksV2ApiControllerListTaskAssignmentsData, ThrowOnError>) => import("./client").RequestResult<TasksV2ApiControllerListTaskAssignmentsResponses, TasksV2ApiControllerListTaskAssignmentsErrors, ThrowOnError>;
46
46
  /**
47
47
  * List hunt (triage) tasks
48
- * List Binalyze AIR hunt (triage) tasks using GET /api/v2/hunt. Hunt is the public v2 alias for triage tasks; the list is task-centric and paginated. Each entity carries id, taskName, status, rules[] enriched as {id,name,engine}, totalMatched, assignment counters, assets{assetCount,assetsUrl}, schedule, createdBy and timestamps. Use this when the user asks to list hunts, triage tasks, IOC/YARA scans, or wants to find a hunt task id before cancelling or deleting it. The taskId values returned here feed air-tasks-get, air-hunt-cancel, air-hunt-delete and the bulk variants. Placeholder defaults such as pageNumber=1 are ignored; sortBy accepts only createdAt, taskName, status, assignmentCount.
48
+ * Lists hunt (triage) tasks IOC/YARA/Sigma scans as a task-centric paginated list scoped by `organizations`. Each entry carries the task status, enriched rules, match totals, assignment counters, schedule and timestamps. Supports offset pagination, `filter[field]` querying and whitelisted sorting; task ids from this list feed the single-task cancel and delete endpoints.
49
49
  */
50
50
  export declare const tasksTriageV2ApiControllerListHuntTasks: <ThrowOnError extends boolean = false>(options?: Options<TasksTriageV2ApiControllerListHuntTasksData, ThrowOnError>) => import("./client").RequestResult<TasksTriageV2ApiControllerListHuntTasksResponses, TasksTriageV2ApiControllerListHuntTasksErrors, ThrowOnError>;
51
51
  /**
52
52
  * Bulk cancel hunt (triage) tasks (body dryRun preview)
53
- * Cancel one or more Binalyze AIR hunt (triage) tasks via POST /api/v2/hunt/cancel. MUTATING: cancels ALL active assignments of each task across all its assets; cancellation is queued asynchronously and an abort signal is sent to the agents. Task records and downloaded data are kept (use air-hunt-bulk-delete to remove them). taskIds takes task UUIDs from air-hunt-list. Setting all=true sends taskIds='all' and cancels EVERY active (scheduled/assigned/processing) hunt task in the required organizations scope -- body organizations (ids/names or "all") is REQUIRED for taskIds='all' and optional for explicit id lists; confirm with the user before using it. dryRun is opt-in at the API level (defaults to false); the OpenCode tools send dryRun=true by default. The preview (200) returns result.entities[] = {taskId, taskName, willCancelAssignmentCount, status} without cancelling anything. ALWAYS run the preview first and show the user what would be cancelled; pass dryRun=false only after the user explicitly confirms the exact task list. The real cancel returns cancelledAssignmentCount and status 'cancelling' instead. Both forms include warnings[] for skipped tasks (e.g. already in a terminal state). 400 'No matching tasks found' means no given id resolved to an accessible hunt task. For a single task prefer air-hunt-cancel, which returns a leak-safe 404 for unknown ids.
53
+ * Cancels one or more hunt (triage) tasks by id, or every active hunt task in the given organization scope when `all=true`. Cancellation is queued asynchronously across all assigned assets; task records and downloaded data are kept. Set `dryRun=true` to preview the affected tasks and assignment counts without cancelling anything.
54
54
  */
55
55
  export declare const tasksTriageV2ApiControllerCancel: <ThrowOnError extends boolean = false>(options: Options<TasksTriageV2ApiControllerCancelData, ThrowOnError>) => import("./client").RequestResult<TasksTriageV2ApiControllerCancelResponses, TasksTriageV2ApiControllerCancelErrors, ThrowOnError>;
56
56
  /**
57
57
  * Bulk delete hunt (triage) tasks (body dryRun preview)
58
- * Delete one or more Binalyze AIR hunt (triage) tasks via POST /api/v2/hunt/delete. DESTRUCTIVE and irreversible: removes the task records, ALL assignments, and downloaded files/artifacts; nothing remains in history. Active tasks additionally get an agent cancel signal. Use air-hunt-bulk-cancel to merely stop tasks while keeping records. taskIds takes task UUIDs from air-hunt-list. Setting all=true sends taskIds='all' and deletes EVERY hunt task (active and finished) in the required organizations scope -- body organizations (ids/names or "all") is REQUIRED for taskIds='all' and optional for explicit id lists. dryRun is opt-in at the API level (defaults to false); the OpenCode tools send dryRun=true by default. The preview (200) returns result.entities[] = {taskId, taskName, willDeleteAssignmentCount, affectedAssets[], status, createdAt} without deleting anything. ALWAYS run the preview first and show the user what would be deleted; pass dryRun=false only after the user explicitly confirms the exact task list. The real delete returns deletedAssignmentCount instead of willDeleteAssignmentCount. 400 'No matching tasks found' means no given id resolved to an accessible hunt task. For a single task prefer air-hunt-delete (leak-safe 404).
58
+ * Deletes one or more hunt (triage) tasks by id, or every hunt task in the given organization scope when `all=true`. Deletion is irreversible: task records, all assignments and downloaded artifacts are removed, and active tasks are cancelled on the agents. Set `dryRun=true` to preview the affected tasks and assets without deleting anything.
59
59
  */
60
60
  export declare const tasksTriageV2ApiControllerDelete: <ThrowOnError extends boolean = false>(options: Options<TasksTriageV2ApiControllerDeleteData, ThrowOnError>) => import("./client").RequestResult<TasksTriageV2ApiControllerDeleteResponses, TasksTriageV2ApiControllerDeleteErrors, ThrowOnError>;
61
61
  /**
62
62
  * Cancel a single hunt (triage) task (dryRun query preview)
63
- * Cancel a single Binalyze AIR hunt (triage) task via POST /api/v2/hunt/{taskId}/cancel. MUTATING: cancels ALL active assignments of this task across all its assets; cancellation is queued asynchronously and an abort signal is sent to the agents. The task record and downloaded data are kept (use air-hunt-delete to remove them). Use this when the user wants to stop exactly one hunt/triage task; use air-hunt-bulk-cancel for several tasks at once. The taskId comes from air-hunt-list or air-tasks-get. Success (200) returns result.entities[] = {taskId, taskName, cancelledAssignmentCount, status} plus warnings[] (e.g. skipped when nothing is active). 404 'Task not found' also covers hunt tasks outside the caller's organizations (leak-safe); it does not necessarily mean the id is wrong.
63
+ * Cancels a single hunt (triage) task, stopping all of its active assignments across assets; cancellation is queued asynchronously. The task record and downloaded data are kept. Set `dryRun=true` to preview the effect without cancelling.
64
64
  */
65
65
  export declare const tasksTriageV2ApiControllerCancelOne: <ThrowOnError extends boolean = false>(options: Options<TasksTriageV2ApiControllerCancelOneData, ThrowOnError>) => import("./client").RequestResult<TasksTriageV2ApiControllerCancelOneResponses, TasksTriageV2ApiControllerCancelOneErrors, ThrowOnError>;
66
66
  /**
67
67
  * Delete a single hunt (triage) task (dryRun query preview)
68
- * Delete a single Binalyze AIR hunt (triage) task via POST /api/v2/hunt/{taskId}/delete. DESTRUCTIVE and irreversible: removes the task record, ALL its assignments, and downloaded files/artifacts; nothing remains in history. An active task additionally gets an agent cancel signal. Use air-hunt-cancel to merely stop the task while keeping records. Use this for exactly one task; use air-hunt-bulk-delete for several tasks at once. The taskId comes from air-hunt-list or air-tasks-get. dryRun is opt-in at the API level (defaults to false) and is sent as the ?dryRun=true query parameter; the OpenCode tools send it by default. The preview (200) returns result.entities[] = {taskId, taskName, willDeleteAssignmentCount, affectedAssets[], status, createdAt} without deleting anything. ALWAYS preview first and show the user; pass dryRun=false only after the user explicitly confirms this exact task. The real delete returns deletedAssignmentCount instead of willDeleteAssignmentCount. 404 'Task not found' also covers tasks outside the caller's organizations (leak-safe).
68
+ * Deletes a single hunt (triage) task, irreversibly removing its record, all of its assignments and any downloaded artifacts; an active task is also cancelled on the agents. Set `dryRun=true` to preview the affected assignments and assets without deleting anything.
69
69
  */
70
70
  export declare const tasksTriageV2ApiControllerDeleteOne: <ThrowOnError extends boolean = false>(options: Options<TasksTriageV2ApiControllerDeleteOneData, ThrowOnError>) => import("./client").RequestResult<TasksTriageV2ApiControllerDeleteOneResponses, TasksTriageV2ApiControllerDeleteOneErrors, ThrowOnError>;
71
71
  /**
72
72
  * List device acquisition profiles
73
- * List Binalyze AIR device (evidence) acquisition profiles via GET /api/v2/libraries/acquisition/device. Read-only and paginated. Each entity is a profile summary: id, name, organizations[{id,name}], averageTime, createdAt/createdBy, lastUsedAt/lastUsedBy, deletable, and a detailsUrl. Per-OS configs (windows/linux/macos/aix/eDiscovery) are NOT included; use air-acquisition-device-get for one profile's full config. Use this when the user asks to list or search evidence acquisition profiles, or needs a profile id or exact name before get, update, delete, or bulk delete. sortBy accepts only name, createdBy, createdAt, lastUsedAt, lastUsedBy (default createdAt). Profiles with an empty organizations array are global.
73
+ * Lists device (evidence) acquisition profiles as paginated summary rows scoped by `organizations`, with `filter[field]` querying and sorting by name, createdBy, createdAt, lastUsedAt or lastUsedBy. Each row carries id, name, organizations, usage metadata and a detailsUrl; per-OS configs are returned by the single-profile endpoint.
74
74
  */
75
75
  export declare const acquisitionLibraryDeviceV2ApiControllerList: <ThrowOnError extends boolean = false>(options?: Options<AcquisitionLibraryDeviceV2ApiControllerListData, ThrowOnError>) => import("./client").RequestResult<AcquisitionLibraryDeviceV2ApiControllerListResponses, AcquisitionLibraryDeviceV2ApiControllerListErrors, ThrowOnError>;
76
76
  /**
77
77
  * Create device acquisition profile
78
- * Create a Binalyze AIR device (evidence) acquisition profile via POST /api/v2/libraries/acquisition/device. MUTATING: persists a new profile in the acquisition library. Returns 200 with entities[0] = the created profile detail. `name` is required (alphanumeric) plus at least one config block: windows, linux, macos, aix (each with evidenceList/artifactList/customContentProfiles/networkCapture) or eDiscovery ({patterns:[{pattern,category}]}). Any subset of OS blocks is accepted. Body `organizationIds` controls which organizations own the profile; common query `organizations`, `orgs`, and `org` parameters are rejected. dryRun DEFAULTS TO TRUE: the first call validates and returns the would-be entity without persisting anything; pass dryRun=false only to actually create after the user confirms. Get the exact evidence/artifact keys from an existing profile (air-acquisition-device-get) when cloning or when unsure of valid values.
78
+ * Creates a device (evidence) acquisition profile from a required `name` plus at least one config block: windows, linux, macos, aix or eDiscovery. Body `organizationIds` controls which organizations own the profile. With dryRun=true (the default) the request is only validated and the would-be profile is returned without persisting; a real create returns the profile detail in entities[0].
79
79
  */
80
80
  export declare const acquisitionLibraryDeviceV2ApiControllerCreate: <ThrowOnError extends boolean = false>(options: Options<AcquisitionLibraryDeviceV2ApiControllerCreateData, ThrowOnError>) => import("./client").RequestResult<AcquisitionLibraryDeviceV2ApiControllerCreateResponses, AcquisitionLibraryDeviceV2ApiControllerCreateErrors, ThrowOnError>;
81
81
  /**
82
82
  * Bulk delete device acquisition profiles
83
- * Bulk delete Binalyze AIR device (evidence) acquisition profiles via POST /api/v2/libraries/acquisition/device/delete. MUTATING and irreversible. Resolution is tolerant: unknown or ambiguous items are skipped and reported in warnings[] (action: 'skipped') instead of failing the whole request. Profiles referenced by running/scheduled tasks or system profiles are also skipped with a warning. dryRun DEFAULTS TO TRUE: the first call returns entities[] of what would be deleted; pass dryRun=false only to actually delete after the user confirms. A real delete returns deletedCount plus warnings[]. Use this for several profiles at once; use air-acquisition-device-delete for exactly one. Ids and exact names come from air-acquisition-device-list.
83
+ * Deletes several device (evidence) acquisition profiles in one request, resolving each item by UUID or exact name. Unknown, ambiguous, in-use or system profiles are skipped and reported in warnings[] instead of failing the batch. With dryRun=true (the default) the response previews what would be deleted; a real delete returns deletedCount plus warnings[].
84
84
  */
85
85
  export declare const acquisitionLibraryDeviceV2ApiControllerBulkDelete: <ThrowOnError extends boolean = false>(options: Options<AcquisitionLibraryDeviceV2ApiControllerBulkDeleteData, ThrowOnError>) => import("./client").RequestResult<AcquisitionLibraryDeviceV2ApiControllerBulkDeleteResponses, AcquisitionLibraryDeviceV2ApiControllerBulkDeleteErrors, ThrowOnError>;
86
86
  /**
87
87
  * Delete device acquisition profile
88
- * Delete ONE Binalyze AIR device (evidence) acquisition profile via DELETE /api/v2/libraries/acquisition/device/{idOrName}. MUTATING and irreversible. A profile referenced by a still-running or scheduled acquisition task is protected: the API returns 400 PROFILE_IN_USE with the blocking task ids (completed/cancelled/failed tasks do not block). System (predefined) profiles return 406 SYSTEM_PROFILE_IMMUTABLE. dryRun DEFAULTS TO TRUE: the first call returns what would be deleted without removing anything; pass dryRun=false only to actually delete after the user confirms. Use air-acquisition-device-bulk-delete for several profiles at once. The idOrName comes from air-acquisition-device-list or air-acquisition-device-get. An unknown idOrName returns 404 NOT_FOUND with suggestions; an ambiguous name returns 400 AMBIGUOUS_NAME.
88
+ * Deletes one device (evidence) acquisition profile by UUID or exact name. Profiles referenced by running or scheduled acquisition tasks are protected (400 PROFILE_IN_USE), and system profiles cannot be deleted (406 SYSTEM_PROFILE_IMMUTABLE). With dryRun=true (the default) the response shows what would be deleted without removing anything.
89
89
  */
90
90
  export declare const acquisitionLibraryDeviceV2ApiControllerDelete: <ThrowOnError extends boolean = false>(options: Options<AcquisitionLibraryDeviceV2ApiControllerDeleteData, ThrowOnError>) => import("./client").RequestResult<AcquisitionLibraryDeviceV2ApiControllerDeleteResponses, AcquisitionLibraryDeviceV2ApiControllerDeleteErrors, ThrowOnError>;
91
91
  /**
92
92
  * Get device acquisition profile by id or name
93
- * Get ONE Binalyze AIR device (evidence) acquisition profile by UUID or exact name via GET /api/v2/libraries/acquisition/device/{idOrName}. Read-only. Returns the full profile detail in entities[0]: id, name, organizations[{id,name}], the per-OS configs (windows/linux/macos/aix with evidence and artifact lists), eDiscovery patterns, deletable, and timestamps. Use this when the user asks to show or inspect an evidence acquisition profile's contents, or to clone one. Ids and exact names come from air-acquisition-device-list. An unknown idOrName returns 404 NOT_FOUND with did-you-mean suggestions in errors[0].details.suggestions[]; an ambiguous name returns 400 AMBIGUOUS_NAME with candidates in errors[0].details.matches[].
93
+ * Fetches one device (evidence) acquisition profile by UUID or exact name, returning the full detail in entities[0]: per-OS configs (windows, linux, macos, aix), eDiscovery patterns, organizations and timestamps. A name matching several profiles returns 400 AMBIGUOUS_NAME with candidates; an unknown identifier returns 404 with suggestions.
94
94
  */
95
95
  export declare const acquisitionLibraryDeviceV2ApiControllerGet: <ThrowOnError extends boolean = false>(options: Options<AcquisitionLibraryDeviceV2ApiControllerGetData, ThrowOnError>) => import("./client").RequestResult<AcquisitionLibraryDeviceV2ApiControllerGetResponses, AcquisitionLibraryDeviceV2ApiControllerGetErrors, ThrowOnError>;
96
96
  /**
97
97
  * Update device acquisition profile
98
- * Update ONE Binalyze AIR device (evidence) acquisition profile via PATCH /api/v2/libraries/acquisition/device/{idOrName}. MUTATING partial update: only the fields you pass change; omitted fields keep their current value. Updatable fields: name, organizationIds, windows, linux, macos, aix, eDiscovery. Passing null for an OS block removes it; the merged profile must still keep at least one config block. Sending no updatable field returns NOTHING_CHANGED with result null. System (predefined) profiles cannot be updated: the API returns 406 SYSTEM_PROFILE_IMMUTABLE. dryRun DEFAULTS TO TRUE: the first call previews the merged profile without persisting; pass dryRun=false only to actually update after the user confirms. The idOrName comes from air-acquisition-device-list or air-acquisition-device-get. An unknown idOrName returns 404 NOT_FOUND with suggestions; an ambiguous name returns 400 AMBIGUOUS_NAME.
98
+ * Partially updates one device (evidence) acquisition profile: only the provided fields (name, organizationIds, windows, linux, macos, aix, eDiscovery) change, and passing null removes an OS block. The merged profile must keep at least one config block, and system profiles cannot be updated. With dryRun=true (the default) the merged profile is previewed without persisting.
99
99
  */
100
100
  export declare const acquisitionLibraryDeviceV2ApiControllerUpdate: <ThrowOnError extends boolean = false>(options: Options<AcquisitionLibraryDeviceV2ApiControllerUpdateData, ThrowOnError>) => import("./client").RequestResult<AcquisitionLibraryDeviceV2ApiControllerUpdateResponses, AcquisitionLibraryDeviceV2ApiControllerUpdateErrors, ThrowOnError>;
101
101
  /**
102
102
  * List triage rules
103
- * List Binalyze AIR triage rules (the triage library: YARA, Sigma, osquery IOC-scan rules) using GET /api/v2/libraries/triage. Read-only and paginated. Each entity is a rule summary: id, name, description, engine, searchIn flags, organizations [{id,name}], tags, author, createdAt/updatedAt/lastUsedAt. Rule content is NOT included; use air-triage-rules-get for one rule's body. Use this when the user asks to list triage/IOC rules, search the rule library, or needs a rule id or exact name before get, update, delete, or export. sortBy accepts only name, createdAt, updatedAt, lastUsedAt, author (default createdAt). Rules with an empty organizations list are global (visible to every org).
103
+ * Lists triage rules (YARA, Sigma and osquery) from the triage library, scoped by `organizations`. Supports offset pagination, whitelisted sorting and `filter[field]` querying. Each entry is a rule summary without the rule body.
104
104
  */
105
105
  export declare const triageLibraryV2ApiControllerList: <ThrowOnError extends boolean = false>(options?: Options<TriageLibraryV2ApiControllerListData, ThrowOnError>) => import("./client").RequestResult<TriageLibraryV2ApiControllerListResponses, TriageLibraryV2ApiControllerListErrors, ThrowOnError>;
106
106
  /**
107
107
  * Create triage rule
108
- * Create a Binalyze AIR triage rule (YARA, Sigma, or osquery IOC-scan rule) via POST /api/v2/libraries/triage. MUTATING: persists a new rule in the triage library; the rule content is validated by the engine before saving and an invalid rule fails with 400. Only `rule` (the content) is required; name and engine are auto-detected from the content when omitted, and a name collision is resolved by suffixing (a warning reports the adjusted name). dryRun DEFAULTS TO TRUE: the first call returns the would-be entity without persisting anything; pass dryRun=false only to actually create after the user confirms. Success returns entities[0] with the created rule detail plus warnings[] (e.g. name adjustments). Use air-triage-rules-validate to only check a rule without creating it.
108
+ * Creates a triage rule from the submitted rule content; the content is validated by its engine before saving, and name and engine are auto-detected when omitted. Supports a dry-run preview that returns the would-be rule without persisting it. Returns the created rule detail plus any warnings, such as name adjustments after a collision.
109
109
  */
110
110
  export declare const triageLibraryV2ApiControllerCreate: <ThrowOnError extends boolean = false>(options: Options<TriageLibraryV2ApiControllerCreateData, ThrowOnError>) => import("./client").RequestResult<TriageLibraryV2ApiControllerCreateResponses, TriageLibraryV2ApiControllerCreateErrors, ThrowOnError>;
111
111
  /**
112
112
  * Bulk delete triage rules
113
- * Bulk delete Binalyze AIR triage rules via POST /api/v2/libraries/triage/delete. MUTATING and irreversible: removes every resolved rule and its stored content from the triage library. Resolution is tolerant: rules that cannot be found are skipped and reported in warnings[] instead of failing the whole request. dryRun DEFAULTS TO TRUE: the first call previews what would be deleted; pass dryRun=false only to actually delete after the user confirms. Use this for several rules at once; use air-triage-rules-delete for exactly one. Rule ids and exact names come from air-triage-rules-list. Success returns deletedCount plus warnings[] (skipped or unresolved rules).
113
+ * Deletes several triage rules in one request, identified by UUID or exact name in the `rules` body field. Rules that cannot be resolved are skipped and reported as warnings, and a dry-run preview lists what would be deleted. Returns the number of deleted rules.
114
114
  */
115
115
  export declare const triageLibraryV2ApiControllerBulkDelete: <ThrowOnError extends boolean = false>(options: Options<TriageLibraryV2ApiControllerBulkDeleteData, ThrowOnError>) => import("./client").RequestResult<TriageLibraryV2ApiControllerBulkDeleteResponses, TriageLibraryV2ApiControllerBulkDeleteErrors, ThrowOnError>;
116
116
  /**
117
117
  * Validate triage rule
118
- * Validate a Binalyze AIR triage rule (YARA, Sigma, or osquery) via POST /api/v2/libraries/triage/validate. Read-only: nothing is persisted, so there is no dryRun flag. The engine is auto-detected from the rule content when omitted; passing a wrong engine returns a 400 INVALID_ENGINE with the detected engine under errors[0].details.suggestions. osquery rules must be read-only SELECT statements against known tables. Use this before air-triage-rules-create or air-triage-rules-update when the user wants to check a rule, or to identify which engine a rule belongs to. Success returns entities[0] = {valid: true, engine} plus warnings[]; an invalid rule fails with a 400 envelope describing the syntax problem.
118
+ * Validates triage rule content (YARA, Sigma or osquery) without persisting anything. The engine is auto-detected when omitted; a valid rule returns the detected engine and any advisories, while an invalid rule fails with a 400 error describing the problem.
119
119
  */
120
120
  export declare const triageLibraryV2ApiControllerValidate: <ThrowOnError extends boolean = false>(options: Options<TriageLibraryV2ApiControllerValidateData, ThrowOnError>) => import("./client").RequestResult<TriageLibraryV2ApiControllerValidateResponses, TriageLibraryV2ApiControllerValidateErrors, ThrowOnError>;
121
121
  /**
122
122
  * Delete triage rule
123
- * Delete ONE Binalyze AIR triage rule via DELETE /api/v2/libraries/triage/{idOrName}. MUTATING and irreversible: removes the rule and its stored content from the triage library. dryRun DEFAULTS TO TRUE: the first call returns what would be deleted without removing anything; pass dryRun=false only to actually delete after the user confirms. Use air-triage-rules-bulk-delete for several rules at once. The idOrName comes from air-triage-rules-list or air-triage-rules-get. Success returns entities[0] = {id, name} of the deleted rule. 404 also covers rules outside the caller's organization scope (leak-safe); it does not necessarily mean the id is wrong.
123
+ * Deletes one triage rule identified by UUID or exact name, removing the rule and its stored content from the triage library. A dry-run preview returns what would be deleted without removing anything; a real deletion returns the id and name of the deleted rule.
124
124
  */
125
125
  export declare const triageLibraryV2ApiControllerDelete: <ThrowOnError extends boolean = false>(options: Options<TriageLibraryV2ApiControllerDeleteData, ThrowOnError>) => import("./client").RequestResult<TriageLibraryV2ApiControllerDeleteResponses, TriageLibraryV2ApiControllerDeleteErrors, ThrowOnError>;
126
126
  /**
127
127
  * Get triage rule by id or name
128
- * Get ONE Binalyze AIR triage rule (YARA/Sigma/osquery IOC-scan rule) by UUID or exact name via GET /api/v2/libraries/triage/{idOrName}. Read-only. Returns the full rule detail in entities[0]: id, name, description, engine, searchIn flags, the rule content (body), organizations [{id,name}], tags, author and timestamps. Use this when the user asks to show, inspect, or read a triage rule's content. Rule ids and exact names come from air-triage-rules-list. 404 also covers rules outside the caller's organization scope (leak-safe); the response may include a did-you-mean suggestion when the name is close to an existing rule.
128
+ * Fetches one triage rule by UUID or exact name, including the rule content, engine, searchIn flags, organizations, tags and timestamps. A rule outside the caller's organization scope returns 404, possibly with a did-you-mean suggestion.
129
129
  */
130
130
  export declare const triageLibraryV2ApiControllerGet: <ThrowOnError extends boolean = false>(options: Options<TriageLibraryV2ApiControllerGetData, ThrowOnError>) => import("./client").RequestResult<TriageLibraryV2ApiControllerGetResponses, TriageLibraryV2ApiControllerGetErrors, ThrowOnError>;
131
131
  /**
132
132
  * Update triage rule
133
- * Update ONE Binalyze AIR triage rule via PATCH /api/v2/libraries/triage/{idOrName}. MUTATING partial update: only the fields you pass change; omitted fields keep their current value. The engine cannot be changed (create a new rule instead). A changed rule body is re-validated by its engine before saving; an invalid rule fails with 400. `tags` REPLACES the whole tag set. Sending no updatable field returns a NOTHING_CHANGED error. dryRun DEFAULTS TO TRUE: the first call previews the resulting rule without persisting; pass dryRun=false only to actually update after the user confirms. The idOrName comes from air-triage-rules-list or air-triage-rules-get. Success returns entities[0] with the updated rule detail plus warnings[]. 404 also covers rules outside the caller's organization scope (leak-safe).
133
+ * Applies a partial update to one triage rule identified by UUID or exact name: only the submitted fields change, `tags` replaces the whole tag set, and the engine cannot be modified. A changed rule body is re-validated before saving, and a dry-run preview of the resulting rule is supported. Returns the updated rule detail plus any warnings.
134
134
  */
135
135
  export declare const triageLibraryV2ApiControllerUpdate: <ThrowOnError extends boolean = false>(options: Options<TriageLibraryV2ApiControllerUpdateData, ThrowOnError>) => import("./client").RequestResult<TriageLibraryV2ApiControllerUpdateResponses, TriageLibraryV2ApiControllerUpdateErrors, ThrowOnError>;
136
136
  /**
137
137
  * Export triage rules to an off-network package
138
- * Export Binalyze AIR triage rules into an off-network triage package via POST /api/v2/libraries/triage/export. MUTATING: generates a package file on the Console that bundles the selected rules for offline (off-network) triage of air-gapped endpoints. Resolution is STRICT: any rule that cannot be found fails the whole request with 400 plus name suggestions (unlike bulk delete, which skips). dryRun DEFAULTS TO TRUE: the first call lists what would be exported without generating a package; pass dryRun=false only to actually export after the user confirms. Success returns entities[0] = {fileName, downloadUrl, binaryOptions[]}; feed fileName into air-triage-rules-export-download to fetch the package. Use this when the user wants an offline/off-network triage package of specific rules. Rule ids and exact names come from air-triage-rules-list.
138
+ * Bundles the selected triage rules into an off-network package for offline triage of air-gapped endpoints. Rules are resolved strictly, so any rule that cannot be found fails the request; with dryRun=true (the default) the response previews what would be exported instead of generating a package. A real export returns the generated file name, its download URL and the available agent binary options.
139
139
  */
140
140
  export declare const triageLibraryExportV2ApiControllerExport: <ThrowOnError extends boolean = false>(options: Options<TriageLibraryExportV2ApiControllerExportData, ThrowOnError>) => import("./client").RequestResult<TriageLibraryExportV2ApiControllerExportResponses, TriageLibraryExportV2ApiControllerExportErrors, ThrowOnError>;
141
141
  /**
142
142
  * Download an exported off-network package
143
- * Download a previously exported off-network triage package via GET /api/v2/libraries/triage/export/download and save it inside the current worktree. Read-only on the server side. The fileName comes from air-triage-rules-export (its downloadUrl carries the same value); this tool streams the archive to disk and returns {fileName, outputPath, byteLength}. Optionally embed agent binaries for specific platforms (binaries[]) and MITRE ATT&CK rules (mitre=true) into the package. Use this right after air-triage-rules-export when the user wants the actual package file. Packages can expire; a 404 may mean the export must be re-run.
143
+ * Streams a previously exported off-network triage package as a zip download. The fileName query parameter identifies the package generated by the export endpoint; agent binaries for selected platforms and MITRE ATT&CK rules can optionally be embedded into the package.
144
144
  */
145
145
  export declare const triageLibraryExportV2ApiControllerDownload: <ThrowOnError extends boolean = false>(options: Options<TriageLibraryExportV2ApiControllerDownloadData, ThrowOnError>) => import("./client").RequestResult<TriageLibraryExportV2ApiControllerDownloadResponses, TriageLibraryExportV2ApiControllerDownloadErrors, ThrowOnError>;
146
+ /**
147
+ * List users of an organization
148
+ * Lists users assigned to one caller-visible organization selected by numeric id or case-insensitive exact name. The result uses the canonical v2 user shape, including role privilege metadata, authentication posture, last-login and online-presence fields. Organization references on each user are clipped to organizations the caller can access, preventing membership disclosure across organization boundaries. Use filter[searchTerm] to search username and email; the response is classified as PII on agent-facing surfaces.
149
+ */
150
+ export declare const organizationUserV2ApiControllerListOrganizationUsers: <ThrowOnError extends boolean = false>(options: Options<OrganizationUserV2ApiControllerListOrganizationUsersData, ThrowOnError>) => import("./client").RequestResult<OrganizationUserV2ApiControllerListOrganizationUsersResponses, OrganizationUserV2ApiControllerListOrganizationUsersErrors, ThrowOnError>;
151
+ /**
152
+ * List organizations
153
+ * Lists the organizations visible to the caller using offset pagination. Use organizations to narrow the caller-accessible scope by numeric id or exact name; omitting it selects all accessible organizations. Each result maps the internal _id to id, excludes the deployment credential, and includes totalEndpoints for inventory sizing. filter[name] performs a case-insensitive name contains match, while filter[searchTerm] searches name, owner, and an exact numeric id.
154
+ */
155
+ export declare const organizationV2ApiControllerListOrganizations: <ThrowOnError extends boolean = false>(options?: Options<OrganizationV2ApiControllerListOrganizationsData, ThrowOnError>) => import("./client").RequestResult<OrganizationV2ApiControllerListOrganizationsResponses, OrganizationV2ApiControllerListOrganizationsErrors, ThrowOnError>;
156
+ /**
157
+ * Get organization by id or name
158
+ * Returns one caller-visible organization selected by numeric id or case-insensitive exact name. The response excludes the deployment credential and reports endpoint totals plus total, open, closed, and archived case counts. An inaccessible organization is returned as a leak-safe 404. A numeric miss has no suggestions; a name miss may include ranked suggestions drawn only from organizations visible to the caller.
159
+ */
160
+ export declare const organizationV2ApiControllerGetOrganizationByIdOrName: <ThrowOnError extends boolean = false>(options: Options<OrganizationV2ApiControllerGetOrganizationByIdOrNameData, ThrowOnError>) => import("./client").RequestResult<OrganizationV2ApiControllerGetOrganizationByIdOrNameResponses, OrganizationV2ApiControllerGetOrganizationByIdOrNameErrors, ThrowOnError>;
146
161
  /**
147
162
  * List case activities across visible cases
148
- * List the GLOBAL Binalyze AIR case audit feed across all visible cases using GET /api/v2/cases/activities. Read-only, paginated. Each row carries id, caseId, type (event class name like CaseNoteAddedEvent), performedBy, raw data{} payload, a computed description and timestamps. caseIds filter accepts case UUIDs or names (inclusive match). For the activities of ONE known case prefer air-cases-case-activities. Use this to audit who did what across cases, e.g. all activity by a user or all case closures in a time window.
163
+ * Lists the global audit activity feed across all cases visible to the caller, with offset pagination and optional filters over case, type, performer, time window and free text. Each row carries the activity type, the user who performed it, the raw event payload and a computed description. Set format=csv to stream the feed as CSV.
149
164
  */
150
165
  export declare const caseActivityV2ApiControllerFilterGlobalActivities: <ThrowOnError extends boolean = false>(options?: Options<CaseActivityV2ApiControllerFilterGlobalActivitiesData, ThrowOnError>) => import("./client").RequestResult<CaseActivityV2ApiControllerFilterGlobalActivitiesResponses, CaseActivityV2ApiControllerFilterGlobalActivitiesErrors, ThrowOnError>;
151
166
  /**
152
167
  * List activities for case
153
- * List the audit activity feed of ONE Binalyze AIR case using GET /api/v2/cases/{idOrName}/activities. Read-only, paginated. Each row carries id, type (event class name like CaseNoteAddedEvent), performedBy, raw data{} payload, a computed description and timestamps. The path accepts a case UUID or exact case name. For a feed across multiple cases use air-cases-activities (the global feed) instead. Use this to reconstruct the timeline of a case: who closed it, which notes and assets were added, and when.
168
+ * Lists the audit activity feed of one case identified by UUID or exact name, with offset pagination and optional filters over type, performer, time window and free text. Each row carries the activity type, the user who performed it, the raw event payload and a computed description.
154
169
  */
155
170
  export declare const caseActivityV2ApiControllerFilterCaseActivities: <ThrowOnError extends boolean = false>(options: Options<CaseActivityV2ApiControllerFilterCaseActivitiesData, ThrowOnError>) => import("./client").RequestResult<CaseActivityV2ApiControllerFilterCaseActivitiesResponses, CaseActivityV2ApiControllerFilterCaseActivitiesErrors, ThrowOnError>;
156
171
  /**
157
172
  * Export cases
158
- * Export Binalyze AIR cases to a file via GET /api/v2/cases/export and save it inside the current worktree. Read-only on the server side; no dryRun needed. format=csv (default) saves a text/csv file; format=json saves an application/zip archive containing cases.json (the newest 10000 matching cases, with a TRUNCATED warning when more matched). The filter model mirrors air-cases-list (name substring, status, searchTerm). Returns {format, outputPath, byteLength}. Use air-cases-list instead when the user just wants to read cases in the chat.
173
+ * Exports the cases matching the filter as a downloadable file. format=csv (default) streams a text/csv file; format=json streams an application/zip archive containing cases.json with up to the newest 10000 matching cases. The filter model matches GET /api/v2/cases.
159
174
  */
160
175
  export declare const caseExportV2ApiControllerExportCases: <ThrowOnError extends boolean = false>(options?: Options<CaseExportV2ApiControllerExportCasesData, ThrowOnError>) => import("./client").RequestResult<CaseExportV2ApiControllerExportCasesResponses, CaseExportV2ApiControllerExportCasesErrors, ThrowOnError>;
161
176
  /**
162
177
  * Close cases in bulk
163
- * Close MULTIPLE Binalyze AIR cases in one call via POST /api/v2/cases/close. MUTATING, partial success: eligible cases close, ineligible ones (already closed/archived, not found) surface as warnings[] instead of failing the request. dryRun DEFAULTS TO TRUE: the first call returns a would-close preview plus skip warnings; pass dryRun=false only after the user confirms the case list. Target cases by id or name in cases[], or set cases="all" to close every open case in the required organizations scope (deliberate action; organizations must be provided ids/names or "all"; confirm with the user first). For exactly one case prefer air-cases-close, which also accepts closure report summaries.
178
+ * Closes multiple cases in one request, targeted by ids or names in cases[] or by cases="all" within an organization scope. Eligible cases are closed and skipped ones are reported in warnings[] (partial success); a dryRun preview of the affected cases is supported.
164
179
  */
165
180
  export declare const caseBulkActionV2ApiControllerClose: <ThrowOnError extends boolean = false>(options: Options<CaseBulkActionV2ApiControllerCloseData, ThrowOnError>) => import("./client").RequestResult<CaseBulkActionV2ApiControllerCloseResponses, CaseBulkActionV2ApiControllerCloseErrors, ThrowOnError>;
166
181
  /**
167
182
  * Archive cases in bulk
168
- * Archive MULTIPLE Binalyze AIR cases in one call via POST /api/v2/cases/archive. MUTATING and effectively FINAL: lifecycle is open -> closed -> archived and there is NO unarchive. Only closed cases are eligible; open or already-archived cases surface as warnings[] (partial success). dryRun DEFAULTS TO TRUE: the first call returns a would-archive preview plus skip warnings; pass dryRun=false only after the user confirms the case list. Target cases by id or name in cases[], or set cases="all" to archive every closed case in the required organizations scope (deliberate action; organizations must be provided — ids/names or "all"; confirm with the user first). For exactly one case prefer air-cases-archive.
183
+ * Archives multiple closed cases in one request, targeted by ids or names in cases[] or by cases="all" within an organization scope. Only closed cases are eligible; skipped cases are reported in warnings[] (partial success) and a dryRun preview is supported. Archiving cannot be undone.
169
184
  */
170
185
  export declare const caseBulkActionV2ApiControllerArchive: <ThrowOnError extends boolean = false>(options: Options<CaseBulkActionV2ApiControllerArchiveData, ThrowOnError>) => import("./client").RequestResult<CaseBulkActionV2ApiControllerArchiveResponses, CaseBulkActionV2ApiControllerArchiveErrors, ThrowOnError>;
171
186
  /**
172
187
  * List assets linked to case
173
- * List the assets linked to a Binalyze AIR case using GET /api/v2/cases/{idOrName}/assets. Read-only, paginated; returns full canonical v2 asset entities (nested endpoint{} block) for every asset attached to the case. Use this to see which endpoints belong to a case, to pick asset ids for air-cases-remove-assets, or before acting on the case's machines with the asset tools. The path accepts a case UUID or exact case name. Use format=json (default) for a paginated response or format=csv to stream the linked assets as text/csv.
188
+ * Lists the assets linked to one case identified by UUID or exact name, returning full v2 asset entities with offset pagination and an optional endpoint filter. Set format=csv to stream the linked assets as CSV instead of JSON.
174
189
  */
175
190
  export declare const caseAssetV2ApiControllerFilterAssets: <ThrowOnError extends boolean = false>(options: Options<CaseAssetV2ApiControllerFilterAssetsData, ThrowOnError>) => import("./client").RequestResult<CaseAssetV2ApiControllerFilterAssetsResponses, CaseAssetV2ApiControllerFilterAssetsErrors, ThrowOnError>;
176
191
  /**
177
192
  * List users for case
178
- * List the users who can participate in a Binalyze AIR case using GET /api/v2/cases/{idOrName}/users. Read-only, paginated; the organization scope derives from the case itself. Each entity carries id, username, email, roles[] with privileges, organizations[] as {id,name} refs, admin flags (isGlobalAdmin, isOrganizationAdmin), tfaEnabled, lastLogin and onlineStatus. Use this to find valid usernames or user UUIDs before setting a case owner or assignedUsers via air-cases-create / air-cases-update. The path accepts a case UUID or exact case name.
193
+ * Lists the users who can participate in one case identified by UUID or exact name, with offset pagination and a searchTerm filter over username and email. Each entity carries roles with privileges, organization references, admin flags and login and presence details; the organization scope derives from the case itself.
179
194
  */
180
195
  export declare const caseUserV2ApiControllerFilterUsers: <ThrowOnError extends boolean = false>(options: Options<CaseUserV2ApiControllerFilterUsersData, ThrowOnError>) => import("./client").RequestResult<CaseUserV2ApiControllerFilterUsersResponses, CaseUserV2ApiControllerFilterUsersErrors, ThrowOnError>;
181
196
  /**
182
197
  * List task assignments for case
183
- * List the tasks of a Binalyze AIR case using GET /api/v2/cases/{idOrName}/tasks. Read-only, paginated and ASSIGNMENT-CENTRIC: one task assigned to N assets yields N rows, each with taskId, taskName, taskType, per-asset status and endpoint fields. result.metadata.creators summarizes the unique task creators across the case. The taskId values feed air-tasks-get; assignment rows relate to air-cases-task-assignments-list. The path accepts a case UUID or exact case name. Use this to see what work (triage, acquisition, interact) ran under a case and its per-asset outcome.
198
+ * Lists the tasks of one case identified by UUID or exact name as assignment-centric rows: a task assigned to N assets yields N rows with per-asset status and endpoint fields. The paginated result also carries a metadata.creators summary of the unique task creators across the case.
184
199
  */
185
200
  export declare const caseTaskV2ApiControllerFilterTasks: <ThrowOnError extends boolean = false>(options: Options<CaseTaskV2ApiControllerFilterTasksData, ThrowOnError>) => import("./client").RequestResult<CaseTaskV2ApiControllerFilterTasksResponses, CaseTaskV2ApiControllerFilterTasksErrors, ThrowOnError>;
186
201
  /**
187
202
  * List case notes
188
- * List the notes of a Binalyze AIR case using GET /api/v2/cases/{idOrName}/notes. Read-only, paginated. Each entity carries id, note (the text), writtenBy{id,username,email,profile}, writtenAt and timestamps. The path accepts a case UUID or exact case name. The note id values feed air-cases-notes-update and air-cases-notes-delete. Use this to read the investigation notes of a case or to find a note before editing or deleting it.
203
+ * Lists the notes of a case identified by UUID or exact case name. Read-only and paginated; supports filtering by writer and free-text search over the note body. Each note carries its id, text, writer details and timestamps.
189
204
  */
190
205
  export declare const caseNoteV2ApiControllerFilterNotes: <ThrowOnError extends boolean = false>(options: Options<CaseNoteV2ApiControllerFilterNotesData, ThrowOnError>) => import("./client").RequestResult<CaseNoteV2ApiControllerFilterNotesResponses, CaseNoteV2ApiControllerFilterNotesErrors, ThrowOnError>;
191
206
  /**
192
207
  * Create case note
193
- * Add a note to a Binalyze AIR case via POST /api/v2/cases/{idOrName}/notes. MUTATING. The case must be OPEN; notes cannot be added to closed or archived cases. dryRun DEFAULTS TO TRUE: the first call returns a would-create preview without persisting; pass dryRun=false only after the user confirms. The created note comes back in result.entities[0] with id, note, writtenBy{} and timestamps. The path accepts a case UUID or exact case name; the note text is limited to 10000 characters.
208
+ * Adds a note to an open case identified by UUID or exact case name; the note text is limited to 10000 characters. With dryRun=true the response is a would-create preview and nothing is persisted; otherwise the created note is returned in `result.entities[0]`.
194
209
  */
195
210
  export declare const caseNoteV2ApiControllerCreateNote: <ThrowOnError extends boolean = false>(options: Options<CaseNoteV2ApiControllerCreateNoteData, ThrowOnError>) => import("./client").RequestResult<CaseNoteV2ApiControllerCreateNoteResponses, CaseNoteV2ApiControllerCreateNoteErrors, ThrowOnError>;
196
211
  /**
197
212
  * Delete case note
198
- * Delete one note of a Binalyze AIR case via DELETE /api/v2/cases/{idOrName}/notes/{noteId}. MUTATING and IRREVERSIBLE once executed. The case must be OPEN and deletion is restricted to the note's author or an authorized manager. dryRun DEFAULTS TO TRUE: the first call returns a would-delete preview without removing anything; pass dryRun=false only after the user explicitly confirms. The path accepts a case UUID or exact case name plus the note UUID from air-cases-notes-list.
213
+ * Deletes one note from an open case; deletion is restricted to the note's author or an authorized manager and is irreversible once executed. With dryRun=true the response is a would-delete preview and nothing is removed; otherwise a deletion receipt is returned in `result.entities[0]`.
199
214
  */
200
215
  export declare const caseNoteV2ApiControllerDeleteNote: <ThrowOnError extends boolean = false>(options: Options<CaseNoteV2ApiControllerDeleteNoteData, ThrowOnError>) => import("./client").RequestResult<CaseNoteV2ApiControllerDeleteNoteResponses, CaseNoteV2ApiControllerDeleteNoteErrors, ThrowOnError>;
201
216
  /**
202
217
  * Update case note
203
- * Edit one note of a Binalyze AIR case via PATCH /api/v2/cases/{idOrName}/notes/{noteId}. MUTATING; the note text is fully replaced. The case must be OPEN and only the note's author (or an authorized manager) may edit it. dryRun DEFAULTS TO TRUE: the first call returns a would-update preview without persisting; pass dryRun=false only after the user confirms. The path accepts a case UUID or exact case name plus the note UUID from air-cases-notes-list. The updated note comes back in result.entities[0].
218
+ * Replaces the text of one note on an open case; only the note's author or an authorized manager may edit it. With dryRun=true the response is a would-update preview and nothing is persisted; otherwise the updated note is returned in `result.entities[0]`.
204
219
  */
205
220
  export declare const caseNoteV2ApiControllerUpdateNote: <ThrowOnError extends boolean = false>(options: Options<CaseNoteV2ApiControllerUpdateNoteData, ThrowOnError>) => import("./client").RequestResult<CaseNoteV2ApiControllerUpdateNoteResponses, CaseNoteV2ApiControllerUpdateNoteErrors, ThrowOnError>;
206
221
  /**
207
222
  * List task assignments for case
208
- * List the task assignments attached to a Binalyze AIR case using GET /api/v2/cases/{idOrName}/task-assignments. Read-only, paginated. Each entity carries id, taskId, taskName, taskType, per-asset status, asset{id,name}, hasDroneData, dataImportStatus, progress and timestamps. The id values feed air-cases-task-assignments-delete (detach) and are what air-cases-task-assignments-import adds. The path accepts a case UUID or exact case name. Use this to see which task results are part of the case evidence set.
223
+ * Lists the task assignments attached to one case identified by UUID or exact name, with offset pagination and filters over status, type, assets and data import state. Each entity carries the task reference, per-asset status, the targeted asset and timestamps.
209
224
  */
210
225
  export declare const caseTaskAssignmentV2ApiControllerFilterTaskAssignments: <ThrowOnError extends boolean = false>(options: Options<CaseTaskAssignmentV2ApiControllerFilterTaskAssignmentsData, ThrowOnError>) => import("./client").RequestResult<CaseTaskAssignmentV2ApiControllerFilterTaskAssignmentsResponses, CaseTaskAssignmentV2ApiControllerFilterTaskAssignmentsErrors, ThrowOnError>;
211
226
  /**
212
227
  * Import task assignments into case
213
- * Import task assignments into a Binalyze AIR case via POST /api/v2/cases/{idOrName}/task-assignments/import. MUTATING with PARTIAL SUCCESS: eligible assignments are attached to the case, ineligible ones surface as skipped warnings[]. The case must be OPEN. dryRun DEFAULTS TO TRUE: the first call previews what would be imported plus warnings; pass dryRun=false only after the user confirms. Provide EXACTLY ONE source: taskId (imports that task's eligible assignments) or taskAssignmentIds (explicit assignment UUIDs). Optionally restrict to specific assets via assets[]. Get taskId from air-tasks-get / air-cases-tasks and assignment ids from air-tasks-assignments.
228
+ * Imports task assignments into an open case from either a task id or an explicit list of assignment ids, optionally restricted to specific assets. Eligible assignments are attached and ineligible ones are reported in warnings[] (partial success); a dryRun preview is supported.
214
229
  */
215
230
  export declare const caseTaskAssignmentV2ApiControllerImportTaskAssignments: <ThrowOnError extends boolean = false>(options: Options<CaseTaskAssignmentV2ApiControllerImportTaskAssignmentsData, ThrowOnError>) => import("./client").RequestResult<CaseTaskAssignmentV2ApiControllerImportTaskAssignmentsResponses, CaseTaskAssignmentV2ApiControllerImportTaskAssignmentsErrors, ThrowOnError>;
216
231
  /**
217
232
  * Detach a task assignment from case
218
- * Detach ONE task assignment from a Binalyze AIR case via DELETE /api/v2/cases/{idOrName}/task-assignments/{taskAssignmentId}. MUTATING but non-destructive: it removes ONLY the case relation; the assignment and its task data are NOT deleted. The case must be OPEN. dryRun DEFAULTS TO TRUE: the first call returns a would-remove-from-case preview; pass dryRun=false only after the user confirms. Idempotent: deleting an assignment that is not attached returns deletedCount 0 with a skipped warning instead of failing. Get the assignment UUID from air-cases-task-assignments-list.
233
+ * Detaches one task assignment from an open case without deleting the assignment or its task data. The operation is idempotent and supports a dryRun preview; detaching an assignment that is not attached returns deletedCount 0 with a skipped warning.
219
234
  */
220
235
  export declare const caseTaskAssignmentV2ApiControllerRemoveTaskAssignment: <ThrowOnError extends boolean = false>(options: Options<CaseTaskAssignmentV2ApiControllerRemoveTaskAssignmentData, ThrowOnError>) => import("./client").RequestResult<CaseTaskAssignmentV2ApiControllerRemoveTaskAssignmentResponses, CaseTaskAssignmentV2ApiControllerRemoveTaskAssignmentErrors, ThrowOnError>;
221
236
  /**
222
237
  * Close a case
223
- * Close ONE Binalyze AIR case via POST /api/v2/cases/{idOrName}/close. MUTATING. Only an open case can be closed; closed/archived cases are rejected with a lifecycle error. dryRun DEFAULTS TO TRUE: the first call returns a would-close preview without closing; pass dryRun=false only after the user confirms. reason is required (resolved, false-positive, duplicate, other) and the optional summary fields feed the closure report; the closed case comes back in result.entities[0] with a closure report URL. For two or more cases use air-cases-bulk-close instead.
238
+ * Closes an open case identified by id or name. Requires a closure `reason` (resolved, false-positive, duplicate, other); the optional summary fields feed the closure report. Returns the closed case, including a closure report URL, in `result.entities[0]`; with `dryRun` a would-close preview is returned instead.
224
239
  */
225
240
  export declare const caseActionV2ApiControllerClose: <ThrowOnError extends boolean = false>(options: Options<CaseActionV2ApiControllerCloseData, ThrowOnError>) => import("./client").RequestResult<CaseActionV2ApiControllerCloseResponses, CaseActionV2ApiControllerCloseErrors, ThrowOnError>;
226
241
  /**
227
242
  * Reopen a case
228
- * Reopen ONE closed Binalyze AIR case via POST /api/v2/cases/{idOrName}/open. MUTATING. Only a CLOSED case can be reopened; open and archived cases are rejected with a lifecycle error (archiving is final, there is no unarchive). dryRun DEFAULTS TO TRUE: the first call returns a would-open preview without reopening; pass dryRun=false only after the user confirms. The reopened case comes back in result.entities[0].
243
+ * Reopens a closed case identified by id or name; open and archived cases are rejected with a lifecycle error. Returns the reopened case in `result.entities[0]`; with `dryRun` a would-open preview is returned instead.
229
244
  */
230
245
  export declare const caseActionV2ApiControllerReopen: <ThrowOnError extends boolean = false>(options: Options<CaseActionV2ApiControllerReopenData, ThrowOnError>) => import("./client").RequestResult<CaseActionV2ApiControllerReopenResponses, CaseActionV2ApiControllerReopenErrors, ThrowOnError>;
231
246
  /**
232
247
  * Archive a case
233
- * Archive ONE closed Binalyze AIR case via POST /api/v2/cases/{idOrName}/archive. MUTATING and FINAL: lifecycle is open -> closed -> archived and there is NO unarchive endpoint. Only a CLOSED case can be archived; open or already-archived cases are rejected with a lifecycle error. dryRun DEFAULTS TO TRUE: the first call returns a would-archive preview without archiving; pass dryRun=false only after the user explicitly confirms. The archived case comes back in result.entities[0]. For two or more cases use air-cases-bulk-archive instead.
248
+ * Archives a closed case identified by id or name. Archiving is the final lifecycle step (open, closed, archived) and cannot be undone; only a closed case can be archived. Returns the archived case in `result.entities[0]`; with `dryRun` a would-archive preview is returned instead.
234
249
  */
235
250
  export declare const caseActionV2ApiControllerArchive: <ThrowOnError extends boolean = false>(options: Options<CaseActionV2ApiControllerArchiveData, ThrowOnError>) => import("./client").RequestResult<CaseActionV2ApiControllerArchiveResponses, CaseActionV2ApiControllerArchiveErrors, ThrowOnError>;
236
251
  /**
237
252
  * Unlink assets from a case
238
- * Unlink assets from a Binalyze AIR case via POST /api/v2/cases/{idOrName}/remove-assets. MUTATING but non-destructive: it removes ONLY the case<->asset relation; the assets themselves are NOT deleted, purged or uninstalled. dryRun DEFAULTS TO TRUE: the first call previews which assets would be unlinked plus skip warnings; pass dryRun=false only after the user confirms. Target assets by id or name in assets[] (wins over filter), or with a filter JSON object matched against the assets linked to the case. Assets not attached to the case are skipped with a warning; the real run returns deletedCount.
253
+ * Unlinks assets from an open case without deleting the assets themselves. Target assets by id or name in `assets[]` (takes precedence) or with a `filter` object matched against the assets linked to the case; unmatched targets are skipped with a warning. Returns the number of removed case-asset relations in `deletedCount`; with `dryRun` the assets that would be unlinked are previewed instead.
239
254
  */
240
255
  export declare const caseActionV2ApiControllerRemoveAssets: <ThrowOnError extends boolean = false>(options: Options<CaseActionV2ApiControllerRemoveAssetsData, ThrowOnError>) => import("./client").RequestResult<CaseActionV2ApiControllerRemoveAssetsResponses, CaseActionV2ApiControllerRemoveAssetsErrors, ThrowOnError>;
241
256
  /**
242
257
  * List cases
243
- * List Binalyze AIR cases using GET /api/v2/cases. Read-only, paginated. Each entity uses object refs: owner{id,name}, organizations[{id,name}], category{id,name}, tags[], assignedUsers[], plus taskCounts{} and assets/taskAssignments {count,url} summaries. Lifecycle is open -> closed -> archived (no unarchive). Reference filters (owner, assignedUser, category, tags) accept a UUID or an exact name/username; name is a case-insensitive substring match. Use this to find a case id or name before calling air-cases-get, air-cases-update, air-cases-close or the case sub-resource tools. organizations defaults to all accessible organizations.
258
+ * Lists cases visible to the caller, scoped by `organizations`. Supports offset pagination, whitelisted sorting and `filter[field]` querying over name, status, owner, assigned user, visibility, category, tags, date ranges and a free-text search term. Start here to discover case ids for the single-case endpoints.
244
259
  */
245
260
  export declare const caseV2ApiControllerFilterCases: <ThrowOnError extends boolean = false>(options?: Options<CaseV2ApiControllerFilterCasesData, ThrowOnError>) => import("./client").RequestResult<CaseV2ApiControllerFilterCasesResponses, CaseV2ApiControllerFilterCasesErrors, ThrowOnError>;
246
261
  /**
247
262
  * Create a case
248
- * Create a single Binalyze AIR case via POST /api/v2/cases. MUTATING. dryRun DEFAULTS TO TRUE: the first call returns a would-create preview (resolved unique name, organization, warnings) without persisting; pass dryRun=false only after the user confirms. Reference fields (owner, organization, category, tags, assignedUsers) accept a UUID or an exact name/username and are resolved before creation. The case name cannot be UUID-shaped and is auto-suffixed on a name conflict. owner defaults to the caller and organization is defaulted for single-organization callers. The created case is returned in result.entities[0].
263
+ * Creates a case. Reference fields (owner, organization, category, tags, assignedUsers) accept a UUID or an exact name and are resolved before creation; the case name is auto-suffixed on a conflict. With dryRun=true the response is a would-create preview and nothing is persisted; otherwise the created case is returned in `result.entities[0]`.
249
264
  */
250
265
  export declare const caseV2ApiControllerCreateCase: <ThrowOnError extends boolean = false>(options: Options<CaseV2ApiControllerCreateCaseData, ThrowOnError>) => import("./client").RequestResult<CaseV2ApiControllerCreateCaseResponses, CaseV2ApiControllerCreateCaseErrors, ThrowOnError>;
251
266
  /**
252
267
  * Get case by id or name
253
- * Fetch one Binalyze AIR case by UUID or case name using GET /api/v2/cases/{idOrName}. Read-only; the case is wrapped in result.entities[0]. The entity uses object refs (owner{}, organizations[{id,name}], category{}, tags[], assignedUsers[]), taskCounts{}, and assets/taskAssignments {count,url} summaries. Lifecycle status is open, closed or archived. A 404 also covers cases outside the caller's organizations (leak-safe), so do not infer the case does not exist. Use air-cases-list to discover ids and names first.
268
+ * Fetches one case by UUID or exact case name, returned in `result.entities[0]`. The entity carries object references (owner, organizations, category, tags, assigned users) plus task counts and asset/task-assignment summaries. Cases outside the caller's organizations answer with 404.
254
269
  */
255
270
  export declare const caseV2ApiControllerGetCaseByIdOrName: <ThrowOnError extends boolean = false>(options: Options<CaseV2ApiControllerGetCaseByIdOrNameData, ThrowOnError>) => import("./client").RequestResult<CaseV2ApiControllerGetCaseByIdOrNameResponses, CaseV2ApiControllerGetCaseByIdOrNameErrors, ThrowOnError>;
256
271
  /**
257
272
  * Update a case
258
- * Partially update a Binalyze AIR case via PATCH /api/v2/cases/{idOrName}. MUTATING. dryRun DEFAULTS TO TRUE: the first call returns a would-update preview without persisting; pass dryRun=false only after the user confirms. Only supplied fields change. Owner change is folded into this endpoint (there is no separate change-owner endpoint). tags and metadata are a FULL REPLACE, not a merge; removeCategory=true clears the category. Reference fields (owner, assignedUsers, category, tags) accept a UUID or an exact name/username. If nothing effectively changes the API answers with a NOTHING_CHANGED error envelope.
273
+ * Partially updates an open case: only supplied fields change, tags and metadata are replaced wholesale, removeCategory=true clears the category, and owner changes go through this endpoint. With dryRun=true the response is a would-update preview; a no-op update answers with a NOTHING_CHANGED error envelope.
259
274
  */
260
275
  export declare const caseV2ApiControllerUpdateCase: <ThrowOnError extends boolean = false>(options: Options<CaseV2ApiControllerUpdateCaseData, ThrowOnError>) => import("./client").RequestResult<CaseV2ApiControllerUpdateCaseResponses, CaseV2ApiControllerUpdateCaseErrors, ThrowOnError>;
261
276
  /**
262
277
  * List InterAct command snippets
263
- * List Binalyze AIR InterAct command snippets (reusable shell scripts in the InterAct library) using GET /api/v2/libraries/interact/snippets. Read-only and paginated. Each entity is a snippet summary: id, name, description, script, platforms, tags [{id,name}], organizations [{id,name}], origin (user or predefined), createdBy, createdAt/updatedAt. Use this when the user asks to list or search InterAct snippets/scripts, or needs a snippet id or exact name before get, update, or delete. sortBy accepts only name, createdAt, updatedAt (default name ASC). Predefined (system) snippets have origin=predefined and cannot be modified or deleted.
278
+ * Lists InterAct command snippets (reusable shell scripts) visible to the caller, scoped by `organizations`. Supports offset pagination, `filter[field]` querying and sorting by name, createdAt or updatedAt. Each entity carries the snippet's script, platforms, tags, organizations and origin.
264
279
  */
265
280
  export declare const interactLibrarySnippetV2ApiControllerList: <ThrowOnError extends boolean = false>(options?: Options<InteractLibrarySnippetV2ApiControllerListData, ThrowOnError>) => import("./client").RequestResult<InteractLibrarySnippetV2ApiControllerListResponses, InteractLibrarySnippetV2ApiControllerListErrors, ThrowOnError>;
266
281
  /**
267
282
  * Create InterAct command snippet
268
- * Create a Binalyze AIR InterAct command snippet (a reusable shell script in the InterAct library) via POST /api/v2/libraries/interact/snippets. MUTATING: persists a new snippet. `name` (max 255 alphanumeric chars, not UUID-shaped) and `script` (max 5000 chars) are required. Omitted platforms means all platforms. Omitted organizations auto-selects the caller's single accessible organization; multi-org and all-orgs callers must pass organizations explicitly (400 ORGANIZATION_REQUIRED). Unknown tag names are created in the shared InterAct tag store. A name collision within the target organizations is resolved by auto-suffixing; a warning reports the adjusted name. dryRun DEFAULTS TO TRUE: the first call previews the would-create entity (action='would-create', final name after suffixing) without persisting anything; pass dryRun=false only to actually create after the user confirms. Success returns entities[0] with the created snippet detail plus warnings[] (e.g. name adjustments).
283
+ * Creates a reusable InterAct command snippet from a `name` and `script`, with optional description, platforms, tags and organization scope. Name collisions are resolved by auto-suffixing and reported in `warnings[]`. Supports `dryRun` previews and returns the created snippet in `entities[0]`.
269
284
  */
270
285
  export declare const interactLibrarySnippetV2ApiControllerCreate: <ThrowOnError extends boolean = false>(options: Options<InteractLibrarySnippetV2ApiControllerCreateData, ThrowOnError>) => import("./client").RequestResult<InteractLibrarySnippetV2ApiControllerCreateResponses, InteractLibrarySnippetV2ApiControllerCreateErrors, ThrowOnError>;
271
286
  /**
272
287
  * Bulk delete InterAct command snippets
273
- * Bulk delete Binalyze AIR InterAct command snippets by id or name via POST /api/v2/libraries/interact/snippets/delete. MUTATING and irreversible. Targets that are unknown or predefined (system) are skipped and reported in warnings[]; the delete itself is all-or-nothing over the resolved targets (if one vanishes mid-delete, nothing is deleted and a warning explains it). dryRun DEFAULTS TO TRUE: the first call returns entities[] previews (action:'would-delete' per resolved snippet) plus warnings for skipped targets, without deleting anything; pass dryRun=false only to actually delete after the user confirms. Success returns { deletedCount, warnings }. For a single snippet prefer air-interact-snippets-delete.
288
+ * Deletes several InterAct command snippets in one call, targeted by UUID or exact name. Unknown or predefined (system) targets are skipped and reported in `warnings[]`. Supports `dryRun` previews and returns the number of deleted snippets in `deletedCount`.
274
289
  */
275
290
  export declare const interactLibrarySnippetV2ApiControllerBulkDelete: <ThrowOnError extends boolean = false>(options: Options<InteractLibrarySnippetV2ApiControllerBulkDeleteData, ThrowOnError>) => import("./client").RequestResult<InteractLibrarySnippetV2ApiControllerBulkDeleteResponses, InteractLibrarySnippetV2ApiControllerBulkDeleteErrors, ThrowOnError>;
276
291
  /**
277
292
  * Delete InterAct command snippet
278
- * Delete ONE Binalyze AIR InterAct command snippet by UUID or exact name via DELETE /api/v2/libraries/interact/snippets/{idOrName}. MUTATING and irreversible: removes the snippet record and its tag relations. Predefined (system, origin=predefined) snippets cannot be deleted and return an error. An unknown id or name returns 404. dryRun DEFAULTS TO TRUE: the first call returns entities[0] = { id, name, action:'would-delete', effects } without deleting anything; pass dryRun=false only to actually delete after the user confirms. Success returns entities[0] = { id, name } of the deleted snippet. For deleting several snippets at once use air-interact-snippets-bulk-delete.
293
+ * Deletes one InterAct command snippet identified by UUID or exact name, removing the snippet record and its tag relations. Predefined (system) snippets cannot be deleted. Supports `dryRun` previews and returns the deleted snippet's id and name in `entities[0]`.
279
294
  */
280
295
  export declare const interactLibrarySnippetV2ApiControllerDelete: <ThrowOnError extends boolean = false>(options: Options<InteractLibrarySnippetV2ApiControllerDeleteData, ThrowOnError>) => import("./client").RequestResult<InteractLibrarySnippetV2ApiControllerDeleteResponses, InteractLibrarySnippetV2ApiControllerDeleteErrors, ThrowOnError>;
281
296
  /**
282
297
  * Get InterAct command snippet by id or name
283
- * Get ONE Binalyze AIR InterAct command snippet by UUID or exact name using GET /api/v2/libraries/interact/snippets/{idOrName}. Read-only. Returns entities[0] with the full snippet detail: id, name, description, script, platforms, tags [{id,name}], organizations [{id,name}], origin (user or predefined), createdBy, createdAt/updatedAt. Use this when the user asks for a specific snippet's script or metadata. An unknown id or name returns 404. If the name is not exact, use air-interact-snippets-list with a name filter first.
298
+ * Fetches one InterAct command snippet by UUID or exact name, returned in `entities[0]` with the snippet's script, platforms, tags, organizations and origin. An unknown id or name returns 404.
284
299
  */
285
300
  export declare const interactLibrarySnippetV2ApiControllerGet: <ThrowOnError extends boolean = false>(options: Options<InteractLibrarySnippetV2ApiControllerGetData, ThrowOnError>) => import("./client").RequestResult<InteractLibrarySnippetV2ApiControllerGetResponses, InteractLibrarySnippetV2ApiControllerGetErrors, ThrowOnError>;
286
301
  /**
287
302
  * Update InterAct command snippet
288
- * Update ONE Binalyze AIR InterAct command snippet by UUID or exact name via PATCH /api/v2/libraries/interact/snippets/{idOrName}. MUTATING, partial update: only the fields you pass are changed. Updatable fields: name, script, description, platforms, tags, organizations. Passing tags=[] clears all tags; passing organizations replaces the organization scope (requires authority over the current scope). Predefined (system, origin=predefined) snippets cannot be modified and return an error. Sending no updatable field returns HTTP 200 with success:false and a NOTHING_CHANGED error entry. dryRun DEFAULTS TO TRUE: the first call previews the would-update entity with changedFields without persisting; pass dryRun=false only to actually update after the user confirms. Success returns entities[0] with the updated snippet detail plus warnings[] (e.g. name auto-suffix on collision).
303
+ * Applies a partial update to one InterAct command snippet identified by UUID or exact name; only the provided fields (name, script, description, platforms, tags, organizations) change. Predefined (system) snippets cannot be modified. Supports `dryRun` previews and returns the updated snippet in `entities[0]`.
289
304
  */
290
305
  export declare const interactLibrarySnippetV2ApiControllerUpdate: <ThrowOnError extends boolean = false>(options: Options<InteractLibrarySnippetV2ApiControllerUpdateData, ThrowOnError>) => import("./client").RequestResult<InteractLibrarySnippetV2ApiControllerUpdateResponses, InteractLibrarySnippetV2ApiControllerUpdateErrors, ThrowOnError>;
291
306
  /**
292
307
  * List InterAct command snippet tags
293
- * List Binalyze AIR InterAct snippet tags (the shared tag store of the InterAct library) using GET /api/v2/libraries/interact/tags. Read-only and paginated. Each entity is a tag: id, name, organizations [{id,name}], createdAt/updatedAt, and (with withCount=true) the number of snippets using it. Use this when the user asks to list or search InterAct tags, or needs a tag id or exact name before get, update, delete, or before tagging snippets. sortBy accepts only name, createdAt, updatedAt (default name ASC).
308
+ * Lists InterAct snippet tags (the shared tag store of the InterAct library) visible to the caller, scoped by `organizations`. Supports offset pagination, `filter[field]` querying and sorting by name, createdAt or updatedAt. Each entity carries the tag name, organizations and, with `filter[withCount]=true`, its snippet usage count.
294
309
  */
295
310
  export declare const interactLibraryTagV2ApiControllerList: <ThrowOnError extends boolean = false>(options?: Options<InteractLibraryTagV2ApiControllerListData, ThrowOnError>) => import("./client").RequestResult<InteractLibraryTagV2ApiControllerListResponses, InteractLibraryTagV2ApiControllerListErrors, ThrowOnError>;
296
311
  /**
297
312
  * Create InterAct command snippet tag
298
- * Create a Binalyze AIR InterAct snippet tag (in the shared tag store of the InterAct library) via POST /api/v2/libraries/interact/tags. MUTATING: persists a new tag. `name` (max 100 alphanumeric chars, not UUID-shaped) is required. Omitted organizations auto-selects the caller's single accessible organization; multi-org and all-orgs callers must pass organizations explicitly (400 ORGANIZATION_REQUIRED). A name collision within the target organizations is resolved by auto-suffixing; a warning reports the adjusted name. dryRun DEFAULTS TO TRUE: the first call previews the would-create entity (action='would-create', final name after suffixing) without persisting anything; pass dryRun=false only to actually create after the user confirms. Success returns entities[0] with the created tag plus warnings[]. Note: air-interact-snippets-create and -update also auto-create unknown tag names, so an explicit tag create is only needed when the user wants the tag itself.
313
+ * Creates an InterAct snippet tag in the shared tag store of the InterAct library from a `name`, with an optional organization scope. Name collisions are resolved by auto-suffixing and reported in `warnings[]`. Supports `dryRun` previews and returns the created tag in `entities[0]`.
299
314
  */
300
315
  export declare const interactLibraryTagV2ApiControllerCreate: <ThrowOnError extends boolean = false>(options: Options<InteractLibraryTagV2ApiControllerCreateData, ThrowOnError>) => import("./client").RequestResult<InteractLibraryTagV2ApiControllerCreateResponses, InteractLibraryTagV2ApiControllerCreateErrors, ThrowOnError>;
301
316
  /**
302
317
  * Bulk delete InterAct command snippet tags
303
- * Bulk delete Binalyze AIR InterAct snippet tags by id or name via POST /api/v2/libraries/interact/tags/delete. MUTATING and irreversible: removes the tag records and their snippet-tag relations (snippets themselves are kept). Targets that are unknown or system tags are skipped and reported in warnings[]; deletion is per-tag, so a tag already deleted concurrently counts as gone. dryRun DEFAULTS TO TRUE: the first call returns entities[] previews (action:'would-delete' per resolved tag) plus warnings for skipped targets, without deleting anything; pass dryRun=false only to actually delete after the user confirms. Success returns { deletedCount, warnings }. For a single tag prefer air-interact-tags-delete.
318
+ * Deletes several InterAct snippet tags in one call, targeted by UUID or exact name. Deleting a tag removes its snippet-tag relations while keeping the snippets. Unknown or system targets are skipped and reported in `warnings[]`. Supports `dryRun` previews and returns the number of deleted tags in `deletedCount`.
304
319
  */
305
320
  export declare const interactLibraryTagV2ApiControllerBulkDelete: <ThrowOnError extends boolean = false>(options: Options<InteractLibraryTagV2ApiControllerBulkDeleteData, ThrowOnError>) => import("./client").RequestResult<InteractLibraryTagV2ApiControllerBulkDeleteResponses, InteractLibraryTagV2ApiControllerBulkDeleteErrors, ThrowOnError>;
306
321
  /**
307
322
  * Delete InterAct command snippet tag
308
- * Delete ONE Binalyze AIR InterAct snippet tag by UUID or exact name via DELETE /api/v2/libraries/interact/tags/{idOrName}. MUTATING and irreversible: removes the tag record and its snippet-tag relations (snippets themselves are kept). System tags cannot be deleted and return an error. An unknown id or name returns 404. dryRun DEFAULTS TO TRUE: the first call returns entities[0] = { id, name, action:'would-delete', effects } without deleting anything; pass dryRun=false only to actually delete after the user confirms. Success returns entities[0] = { id, name } of the deleted tag. For deleting several tags at once use air-interact-tags-bulk-delete.
323
+ * Deletes one InterAct snippet tag identified by UUID or exact name, removing its snippet-tag relations while keeping the snippets. System tags cannot be deleted. Supports `dryRun` previews and returns the deleted tag identity in `entities[0]`.
309
324
  */
310
325
  export declare const interactLibraryTagV2ApiControllerDelete: <ThrowOnError extends boolean = false>(options: Options<InteractLibraryTagV2ApiControllerDeleteData, ThrowOnError>) => import("./client").RequestResult<InteractLibraryTagV2ApiControllerDeleteResponses, InteractLibraryTagV2ApiControllerDeleteErrors, ThrowOnError>;
311
326
  /**
312
327
  * Get InterAct command snippet tag by id or name
313
- * Get ONE Binalyze AIR InterAct snippet tag by UUID or exact name using GET /api/v2/libraries/interact/tags/{idOrName}. Read-only. Returns entities[0] with the tag detail: id, name, organizations [{id,name}], snippet usage count, createdAt/updatedAt. Use this when the user asks about a specific InterAct tag. An unknown id or name returns 404. If the name is not exact, use air-interact-tags-list with a name filter first.
328
+ * Fetches one InterAct snippet tag by UUID or exact name, returned in `entities[0]` with the tag's name, organizations and snippet usage count. An unknown id or name returns 404.
314
329
  */
315
330
  export declare const interactLibraryTagV2ApiControllerGet: <ThrowOnError extends boolean = false>(options: Options<InteractLibraryTagV2ApiControllerGetData, ThrowOnError>) => import("./client").RequestResult<InteractLibraryTagV2ApiControllerGetResponses, InteractLibraryTagV2ApiControllerGetErrors, ThrowOnError>;
316
331
  /**
317
332
  * Update InterAct command snippet tag
318
- * Update ONE Binalyze AIR InterAct snippet tag by UUID or exact name via PATCH /api/v2/libraries/interact/tags/{idOrName}. MUTATING, partial update: only the fields you pass are changed. Updatable fields: name and organizations (replaces the current organization scope; requires authority over the current scope). System tags cannot be updated and return an error. Sending no updatable field returns HTTP 200 with success:false and a NOTHING_CHANGED error entry. dryRun DEFAULTS TO TRUE: the first call previews the would-update entity with changedFields without persisting; pass dryRun=false only to actually update after the user confirms. Success returns entities[0] with the updated tag plus warnings[] (e.g. name auto-suffix on collision).
333
+ * Applies a partial update to one InterAct snippet tag identified by UUID or exact name; only the provided fields (name, organizations) change. System tags cannot be modified. Supports `dryRun` previews and returns the updated tag in `entities[0]`.
319
334
  */
320
335
  export declare const interactLibraryTagV2ApiControllerUpdate: <ThrowOnError extends boolean = false>(options: Options<InteractLibraryTagV2ApiControllerUpdateData, ThrowOnError>) => import("./client").RequestResult<InteractLibraryTagV2ApiControllerUpdateResponses, InteractLibraryTagV2ApiControllerUpdateErrors, ThrowOnError>;
321
336
  /**
322
337
  * List InterAct library files
323
- * List Binalyze AIR InterAct library files (binaries/scripts responders can download during a shell session) using GET /api/v2/libraries/interact/files. Read-only and paginated. Each entity is a file record: id, name, size, sha256, organizations [{id,name}], uploadedBy/uploadedAt, lastUsedBy/lastUsedAt. File CONTENT is not included; use air-interact-files-download for the bytes. Use this when the user asks to list or search InterAct library files, verify a file by sha256, or needs a file id or exact name before download or delete. searchTerm matches name or sha256 (contains, case-insensitive); sha256 is an exact full-hash lookup. sortBy accepts only name, size, uploadedAt, uploadedBy, lastUsedAt, lastUsedBy (default uploadedAt DESC).
338
+ * Lists InterAct library files (binaries and scripts responders can download during a shell session) visible to the caller, scoped by `organizations`. Supports offset pagination, `filter[field]` querying and sorting by name, size, uploadedAt, uploadedBy, lastUsedAt or lastUsedBy. Each entity carries the file's metadata (name, size, sha256, organizations, upload and last-use details); the file content itself is not included.
324
339
  */
325
340
  export declare const interactLibraryFileV2ApiControllerList: <ThrowOnError extends boolean = false>(options?: Options<InteractLibraryFileV2ApiControllerListData, ThrowOnError>) => import("./client").RequestResult<InteractLibraryFileV2ApiControllerListResponses, InteractLibraryFileV2ApiControllerListErrors, ThrowOnError>;
326
341
  /**
327
342
  * Upload InterAct library file
328
- * Upload a file into the Binalyze AIR InterAct library via POST /api/v2/libraries/interact/files (multipart field 'file'). MUTATING: persists the file so responders can download it during InterAct shell sessions. Limits: max 4 GB per upload and 20 GB total library size. A name collision within the target organizations is resolved by auto-suffixing; a warning reports the adjusted name. dryRun DEFAULTS TO TRUE: the first call previews the would-create entity (name, size, sha256) without persisting anything; pass dryRun=false only to actually upload after the user confirms. Success returns entities[0] with the file record (id, name, size, sha256, organizations) plus warnings[], and a Location header pointing at the new resource.
343
+ * Uploads a file into the InterAct library via a multipart request (field `file`) so responders can download it during shell sessions. Uploads are limited to 4 GB per file and 20 GB total library size; name collisions are resolved by auto-suffixing and reported in `warnings[]`. Supports `dryRun` previews and returns the stored file's metadata in `entities[0]` plus a Location header pointing at the new resource.
329
344
  */
330
345
  export declare const interactLibraryFileV2ApiControllerUpload: <ThrowOnError extends boolean = false>(options: Options<InteractLibraryFileV2ApiControllerUploadData, ThrowOnError>) => import("./client").RequestResult<InteractLibraryFileV2ApiControllerUploadResponses, InteractLibraryFileV2ApiControllerUploadErrors, ThrowOnError>;
331
346
  /**
332
347
  * Bulk delete InterAct library files
333
- * Bulk delete Binalyze AIR InterAct library files by id or name via POST /api/v2/libraries/interact/files/delete. MUTATING and irreversible: removes the file records and their stored content. Unknown targets are skipped and reported in warnings[]; the delete itself is all-or-nothing over the resolved targets (if one vanishes mid-delete, nothing is deleted and a warning explains it). dryRun DEFAULTS TO TRUE: the first call returns entities[] previews (action:'would-delete' per resolved file) plus warnings for skipped targets, without deleting anything; pass dryRun=false only to actually delete after the user confirms. Success returns { deletedCount, warnings }. For a single file prefer air-interact-files-delete.
348
+ * Deletes several InterAct library files in one call, targeted by UUID or exact name. Unknown targets are skipped and reported in `warnings[]`; the delete itself is all-or-nothing over the resolved targets. Supports `dryRun` previews and returns the number of deleted files in `deletedCount`.
334
349
  */
335
350
  export declare const interactLibraryFileV2ApiControllerBulkDelete: <ThrowOnError extends boolean = false>(options: Options<InteractLibraryFileV2ApiControllerBulkDeleteData, ThrowOnError>) => import("./client").RequestResult<InteractLibraryFileV2ApiControllerBulkDeleteResponses, InteractLibraryFileV2ApiControllerBulkDeleteErrors, ThrowOnError>;
336
351
  /**
337
352
  * Delete InterAct library file
338
- * Delete ONE Binalyze AIR InterAct library file by UUID or exact name via DELETE /api/v2/libraries/interact/files/{idOrName}. MUTATING and irreversible: removes the library-file record, its file-info record, and the stored file content. An unknown id or name returns 404. dryRun DEFAULTS TO TRUE: the first call returns entities[0] = { id, name, action:'would-delete', effects } without deleting anything; pass dryRun=false only to actually delete after the user confirms. Success returns entities[0] = { id, name } of the deleted file. For deleting several files at once use air-interact-files-bulk-delete.
353
+ * Deletes one InterAct library file, targeted by UUID or exact name, removing the file record and its stored content. Supports `dryRun` previews and returns the deleted file's id and name in `entities[0]`. An unknown id or name returns 404.
339
354
  */
340
355
  export declare const interactLibraryFileV2ApiControllerDelete: <ThrowOnError extends boolean = false>(options: Options<InteractLibraryFileV2ApiControllerDeleteData, ThrowOnError>) => import("./client").RequestResult<InteractLibraryFileV2ApiControllerDeleteResponses, InteractLibraryFileV2ApiControllerDeleteErrors, ThrowOnError>;
341
356
  /**
342
357
  * Download InterAct library file by id or name
343
- * Download ONE Binalyze AIR InterAct library file by UUID or exact name via GET /api/v2/libraries/interact/files/{idOrName}. Read-only; the endpoint streams the file content as an attachment (it bypasses the JSON envelope). This tool saves the bytes to a file inside the current worktree (outputPath, default artifacts/interact-library-file.bin) and returns { outputPath, byteLength }; read the saved file for the content. Use air-interact-files-list first if you only need the file's size/sha256 metadata without downloading content. An unknown id or name returns 404. Library files can be forensic tooling or scripts; treat downloaded content carefully and do not execute it.
358
+ * Downloads the content of one InterAct library file, resolved by UUID or exact name and streamed as an `application/octet-stream` attachment rather than a JSON envelope. An unknown id or name returns 404.
344
359
  */
345
360
  export declare const interactLibraryFileV2ApiControllerDownload: <ThrowOnError extends boolean = false>(options: Options<InteractLibraryFileV2ApiControllerDownloadData, ThrowOnError>) => import("./client").RequestResult<InteractLibraryFileV2ApiControllerDownloadResponses, InteractLibraryFileV2ApiControllerDownloadErrors, ThrowOnError>;
346
361
  /**
347
362
  * List native InterAct shell commands
348
- * List the AIR native InterAct shell commands (and their aliases, descriptions, usage) via GET /api/v2/interact/commands. Use this to GROUND command handling instead of guessing: before telling the user a command looks like a typo, call this tool (optionally with searchTerm) and suggest the closest real command name from `commandNames`. Note: a command that is NOT in this list is not necessarily invalid -- air-assets-interact-run also runs arbitrary shell commands. So only offer a "did you mean" when a close native match exists. Read-only.
363
+ * Lists the native InterAct shell commands built into the AIR agent, including their aliases, descriptions, and usage lines. An optional searchTerm narrows the list with a case-insensitive substring match on command names and aliases.
349
364
  */
350
365
  export declare const interactCommandV2ApiControllerList: <ThrowOnError extends boolean = false>(options?: Options<InteractCommandV2ApiControllerListData, ThrowOnError>) => import("./client").RequestResult<InteractCommandV2ApiControllerListResponses, InteractCommandV2ApiControllerListErrors, ThrowOnError>;
351
366
  /**
352
367
  * List investigation flags
353
- * List Binalyze AIR investigation flags (the shared evidence-flag library) using GET /api/v2/libraries/flags. Read-only and paginated. Each entity: numeric id, name, description, color, organizations [{ id, name }], createdBy, createdAt/updatedAt. filter[name] is a case-insensitive contains match; sortBy accepts name, createdAt, updatedAt (default name ASC). Use this to find a flag id or exact name before update/delete or before flagging evidence in an investigation.
368
+ * Lists the shared investigation flag library, scoped by `organizations`. Supports offset pagination, a case-insensitive `filter[name]` contains match and sorting by name, createdAt or updatedAt (default name ascending). Each entry carries the flag's id, name, color, description and owning organization.
354
369
  */
355
370
  export declare const flagsLibraryV2ApiControllerList: <ThrowOnError extends boolean = false>(options?: Options<FlagsLibraryV2ApiControllerListData, ThrowOnError>) => import("./client").RequestResult<FlagsLibraryV2ApiControllerListResponses, FlagsLibraryV2ApiControllerListErrors, ThrowOnError>;
356
371
  /**
357
372
  * Create investigation flag
358
- * Create a Binalyze AIR investigation flag via POST /api/v2/libraries/flags. MUTATING: persists a new flag. Required: name (max 50 chars, not purely numeric). Optional: color (CSS color, defaults to #4A4D55), description, and organization (id or exact name; defaults to the caller organization when the caller has exactly one; multi-organization and all-organization callers must pass it explicitly or receive 400 ORGANIZATION_REQUIRED). A name collision within the organization is resolved by auto-suffixing with a NAME_ADJUSTED warning; if a unique name cannot be allocated, returns 409 NAME_CONFLICT. dryRun DEFAULTS TO TRUE in the tool layer: the first call previews the would-create entity (action='would-create', final name) without persisting; pass dryRun=false only after the user confirms. Success returns entities[0] with the created flag.
373
+ * Creates an investigation flag from a required name plus optional color, description and owning organization (color defaults to #4A4D55). A name collision within the organization is auto-suffixed and reported as a NAME_ADJUSTED warning. Returns the created flag in entities[0].
359
374
  */
360
375
  export declare const flagsLibraryV2ApiControllerCreate: <ThrowOnError extends boolean = false>(options: Options<FlagsLibraryV2ApiControllerCreateData, ThrowOnError>) => import("./client").RequestResult<FlagsLibraryV2ApiControllerCreateResponses, FlagsLibraryV2ApiControllerCreateErrors, ThrowOnError>;
361
376
  /**
362
377
  * Delete investigation flag
363
- * Delete ONE Binalyze AIR investigation flag by numeric id or exact name via DELETE /api/v2/libraries/flags/{idOrName}. MUTATING and irreversible: removes the flag record. System-created flags cannot be deleted (406). dryRun DEFAULTS TO TRUE in the tool layer: the first call returns entities[0] = { id, name, action:'would-delete' } without deleting; pass dryRun=false only after the user confirms. Success returns entities[0] = { id, name } of the deleted flag.
378
+ * Deletes one investigation flag identified by numeric id or exact name. System-created flags cannot be deleted and return 406. Returns the id and name of the deleted flag in entities[0].
364
379
  */
365
380
  export declare const flagsLibraryV2ApiControllerDelete: <ThrowOnError extends boolean = false>(options: Options<FlagsLibraryV2ApiControllerDeleteData, ThrowOnError>) => import("./client").RequestResult<FlagsLibraryV2ApiControllerDeleteResponses, FlagsLibraryV2ApiControllerDeleteErrors, ThrowOnError>;
366
381
  /**
367
382
  * Get investigation flag by id or name
368
- * Get ONE Binalyze AIR investigation flag by numeric id or exact name using GET /api/v2/libraries/flags/{idOrName}. Read-only. Returns entities[0] with the flag detail. An unknown name returns 404 with ranked did-you-mean candidates under errors[0].details.suggestions; a name shared across organizations returns 400 AMBIGUOUS_NAME with errors[0].details.matches.
383
+ * Fetches one investigation flag by numeric id or exact name and returns its detail in entities[0]. An unknown name returns 404 with near-miss suggestions in errors[0].details.suggestions; a name shared across organizations returns 400 AMBIGUOUS_NAME with candidates in errors[0].details.matches.
369
384
  */
370
385
  export declare const flagsLibraryV2ApiControllerGet: <ThrowOnError extends boolean = false>(options: Options<FlagsLibraryV2ApiControllerGetData, ThrowOnError>) => import("./client").RequestResult<FlagsLibraryV2ApiControllerGetResponses, FlagsLibraryV2ApiControllerGetErrors, ThrowOnError>;
371
386
  /**
372
387
  * Update investigation flag
373
- * Update ONE Binalyze AIR investigation flag by numeric id or exact name via PATCH /api/v2/libraries/flags/{idOrName}. MUTATING, partial: only the fields you pass (name, color, description) change; null is treated as not provided. Sending no updatable field returns HTTP 200 with success:false and a NOTHING_CHANGED error entry. A rename collision is resolved by auto-suffixing with a NAME_ADJUSTED warning. dryRun DEFAULTS TO TRUE in the tool layer: preview first, then pass dryRun=false to persist. Success returns entities[0] with the updated flag (fresh timestamps).
388
+ * Applies a partial update (name, color and/or description) to one investigation flag identified by numeric id or exact name; omitted or null fields stay unchanged. A rename collision is auto-suffixed and reported as a NAME_ADJUSTED warning. Returns the updated flag in entities[0].
374
389
  */
375
390
  export declare const flagsLibraryV2ApiControllerUpdate: <ThrowOnError extends boolean = false>(options: Options<FlagsLibraryV2ApiControllerUpdateData, ThrowOnError>) => import("./client").RequestResult<FlagsLibraryV2ApiControllerUpdateResponses, FlagsLibraryV2ApiControllerUpdateErrors, ThrowOnError>;
376
391
  /**
377
392
  * Flag evidence rows in an investigation
378
- * Mark rows of one investigation with a flag via POST /api/v2/investigations/{idOrName}/flag. MUTATING. body.flag accepts a numeric flag id or exact flag name from the /api/v2/libraries/flags library (the flag must belong to the investigation's organization). A flag NAME that does not exist yet is auto-created in the investigation's organization and reported under warnings[] code=FLAG_CREATED (dryRun previews it as FLAG_WILL_BE_CREATED with flag.id=null); a numeric flag id must already exist (404 otherwise). Auto-creating a flag requires the case-container manage privilege (the same write the /api/v2/libraries/flags create endpoint needs); without it an unknown flag name is rejected with 403. If every items[] row is skipped, the missing flag is NOT created (warnings[] code=FLAG_NOT_CREATED, in the dryRun preview as well) so bad coordinates never mutate the flag library. COORDINATES (critical): each items[] row is identified by evidence + objectId + taskAssignmentId. evidence accepts the evidence TABLE name exactly as air-investigations-schema/sql-query show it (e.g. linux_shell_history) or its bare section name (e.g. shell_history); the endpoint normalizes to the bare section the UI joins on, so just pass the table name you queried. objectId MUST be the row's air_object_id column -- NOT air_id and NOT the full-text-search id/primary key. SOURCE selects the surface (and where the flag shows): EVIDENCE (default) = raw evidence rows, FINDING = the Findings view (what users usually mean by "findings"/"bulgular"), TIMELINE = timeline rows. Take items[] from that SAME surface: for EVIDENCE, evidence=<table name> and objectId=<that table>.air_object_id; for FINDING, evidence=air_findings_view.section and objectId=air_findings_view.air_evidence_object_id (its air_evidence_object_id, NOT its air_object_id); for TIMELINE, evidence=evidence_category and objectId=air_evidence_object_id of the timeline row. EXAMPLE (flag two evidence rows): source omitted (EVIDENCE), items=[{"evidence":"windows_processes","objectId":48,"taskAssignmentId":"604df464-...","}, {"evidence":"windows_user_folders","objectId":1,"taskAssignmentId":"2eb56bc4-..."}] where 48 and 1 are air_object_id values discovered with air-investigations-sql-query (e.g. SELECT air_object_id, air_task_assignment_id FROM windows_processes ...). Rows with an unknown evidence name or coordinates matching no real row are SKIPPED (not written) and reported under warnings[] code=ROWS_SKIPPED with a per-item reason (UNKNOWN_EVIDENCE / ROW_NOT_FOUND); itemCount reflects only the rows actually flagged. dryRun DEFAULTS TO TRUE in the tool layer: the first call previews (action='would-flag', resolved flag, itemCount, any ROWS_SKIPPED warnings) without changing anything; pass dryRun=false only after the user confirms.
393
+ * Marks evidence, finding or timeline rows of one investigation with a flag from the flags library, identified by numeric id or exact name; a flag name that does not exist yet is auto-created in the investigation's organization. Each row is addressed by its evidence table or section name, objectId and taskAssignmentId, and `source` selects the surface (EVIDENCE, FINDING or TIMELINE). Returns a receipt with the resolved flag and the number of rows flagged, plus warnings for skipped rows and flag auto-creation; `dryRun` previews the outcome without changing anything.
379
394
  */
380
395
  export declare const investigationEvidenceFlagV2ApiControllerFlagEvidence: <ThrowOnError extends boolean = false>(options: Options<InvestigationEvidenceFlagV2ApiControllerFlagEvidenceData, ThrowOnError>) => import("./client").RequestResult<InvestigationEvidenceFlagV2ApiControllerFlagEvidenceResponses, InvestigationEvidenceFlagV2ApiControllerFlagEvidenceErrors, ThrowOnError>;
381
396
  /**
382
397
  * Remove a flag from evidence rows in an investigation
383
- * Remove one flag from rows of one investigation via POST /api/v2/investigations/{idOrName}/unflag. MUTATING. Same body/coordinate contract as the flag endpoint: body.flag is a numeric flag id or exact flag name (must already exist -- unlike the flag endpoint, unflag never auto-creates), items[] identifies rows by evidence (table name like linux_shell_history or its bare section shell_history -- normalized server-side) + objectId (the row air_object_id, NOT air_id) + taskAssignmentId, and source (EVIDENCE default, FINDING, TIMELINE) must match the surface the flag was applied to, with coordinates from that same surface (see the flag endpoint). Rows that do not carry the flag are ignored. Unknown evidence names or coordinates matching no real row are skipped and reported under warnings[] code=ROWS_SKIPPED with a per-item reason. itemCount reflects the rows actually processed; it is not the number of rows that actually changed. dryRun DEFAULTS TO TRUE in the tool layer: the first call previews (action='would-unflag') without changing anything; pass dryRun=false only after the user confirms.
398
+ * Removes one flag from evidence, finding or timeline rows of one investigation. The body follows the same contract as the flag endpoint (flag by numeric id or exact existing name, rows addressed by evidence, objectId and taskAssignmentId on the chosen source surface); rows that do not carry the flag are ignored. Returns a receipt with the resolved flag and the number of rows processed, plus warnings for skipped rows; `dryRun` previews the outcome without changing anything.
384
399
  */
385
400
  export declare const investigationEvidenceFlagV2ApiControllerUnflagEvidence: <ThrowOnError extends boolean = false>(options: Options<InvestigationEvidenceFlagV2ApiControllerUnflagEvidenceData, ThrowOnError>) => import("./client").RequestResult<InvestigationEvidenceFlagV2ApiControllerUnflagEvidenceResponses, InvestigationEvidenceFlagV2ApiControllerUnflagEvidenceErrors, ThrowOnError>;
386
401
  /**
@@ -390,306 +405,306 @@ export declare const investigationEvidenceFlagV2ApiControllerUnflagEvidence: <Th
390
405
  export declare const investigationSqlV2ApiControllerGetSchema: <ThrowOnError extends boolean = false>(options: Options<InvestigationSqlV2ApiControllerGetSchemaData, ThrowOnError>) => import("./client").RequestResult<InvestigationSqlV2ApiControllerGetSchemaResponses, InvestigationSqlV2ApiControllerGetSchemaErrors, ThrowOnError>;
391
406
  /**
392
407
  * Run a read-only SQL query on an investigation
393
- * Execute one read-only SELECT statement inside the investigation schema via POST /api/v2/investigations/{idOrName}/sql-query. Returns a paginated result (pageNumber/pageSize in the body; totalEntityCount, totalPageCount, nextPage/previousPage in the envelope). Trailing semicolons, end-of-query -- comments, and trailing LIMIT/OFFSET in sqlQuery are stripped so request paging owns the page slice. Write statements, multiple statements and cross-schema references are rejected. Fixed tables: air_investigation_activities, air_investigation_activity_user_reads, air_investigation_comments, air_investigation_evidence_metadata, air_investigation_evidence_relations, air_investigation_evidence_transformer_versions, air_investigation_external_section_import_error, air_investigation_external_section_import_status, air_investigation_finding_timeline, air_investigation_flags, air_investigation_full_text_search, air_investigation_metadata, air_investigation_notes, air_investigation_reports, air_investigation_report_history, air_investigation_task_assignments, air_investigation_task_execution_logs, air_investigation_timeline, air_investigation_timeline_event_range, air_investigation_timeline_hourly, air_investigation_user_findings, drone_findings. Views: air_all_findings_view, air_excluded_findings_view, air_findings_view, air_timeline_findings_view. Evidence tables are named <platform>_<section> (e.g. windows_triage_file, linux_triage_file, windows_event_records) and vary per investigation. POST the schema endpoint with an empty body to list the populated tables of this investigation with row counts; POST { "table": "<name>" } for column details.
408
+ * Execute one read-only SELECT statement inside the investigation schema via POST /api/v2/investigations/{idOrName}/sql-query. Returns a paginated result (pageNumber/pageSize in the body; totalEntityCount, totalPageCount, nextPage/previousPage in the envelope). Trailing semicolons, end-of-query -- comments, and trailing LIMIT/OFFSET in sqlQuery are stripped so request paging owns the page slice. Write statements, multiple statements and cross-schema references are rejected. Every result-producing branch must be anchored to at least one relation in the selected investigation. Functions are admitted through PostgreSQL catalog capability checks; volatile, dangerous, user-schema and object-reference functions are rejected. Use the schema endpoint to discover the selected investigation tables and columns; PostgreSQL catalog, object-reference, and cross-schema introspection are rejected. Fixed tables: air_investigation_activities, air_investigation_activity_user_reads, air_investigation_comments, air_investigation_evidence_metadata, air_investigation_evidence_relations, air_investigation_evidence_transformer_versions, air_investigation_external_section_import_error, air_investigation_external_section_import_status, air_investigation_finding_timeline, air_investigation_flags, air_investigation_full_text_search, air_investigation_metadata, air_investigation_notes, air_investigation_reports, air_investigation_report_history, air_investigation_task_assignments, air_investigation_task_execution_logs, air_investigation_timeline, air_investigation_timeline_event_range, air_investigation_timeline_hourly, air_investigation_user_findings, drone_findings. Views: air_all_findings_view, air_excluded_findings_view, air_findings_view, air_timeline_findings_view. Evidence tables are named <platform>_<section> (e.g. windows_triage_file, linux_triage_file, windows_event_records) and vary per investigation. POST the schema endpoint with an empty body to list the populated tables of this investigation with row counts; POST { "table": "<name>" } for column details. Documented row-analysis functions (94): abs, age, array_agg, array_cat, array_length, array_position, array_remove, array_to_string, ascii, avg, bit_length, bool_and, bool_or, btrim, cardinality, ceil, ceiling, char_length, chr, concat, concat_ws, corr, count, date_part, date_trunc, dense_rank, div, first_value, floor, initcap, json_array_length, json_typeof, jsonb_array_elements, jsonb_array_elements_text, jsonb_array_length, jsonb_path_exists, jsonb_typeof, lag, last_value, lead, left, length, lower, lpad, ltrim, max, md5, min, mod, mode, now, nth_value, ntile, octet_length, percentile_cont, percentile_disc, plainto_tsquery, position, power, rank, regexp_matches, regexp_replace, regexp_split_to_array, repeat, replace, reverse, right, round, row_number, rpad, rtrim, split_part, sqrt, starts_with, stddev, stddev_pop, string_agg, string_to_array, strpos, substr, substring, sum, to_char, to_date, to_timestamp, to_tsquery, to_tsvector, translate, trim, trunc, unnest, upper, var_pop, variance. Allowed cast types: bigint, boolean, character, character varying, date, double precision, integer, interval, json, jsonb, numeric, real, smallint, text, time, time with time zone, time without time zone, timestamp with time zone, timestamp without time zone, uuid (plus the usual aliases such as int, varchar, timestamptz). Additional functions are admitted only when PostgreSQL catalog metadata proves they are safe, non-volatile built-ins; unknown, extension, user-schema and dangerous functions are rejected. Object-reference (regclass/oid), catalog, session, filesystem, network and *_to_xml* capabilities are rejected. Safe set-returning functions may expand rows in SELECT, FROM or LATERAL. GROUP BY accepts ROLLUP and GROUPING SETS; CUBE is not supported because the name doubles as an extension function. Execution-context expressions (current_user, current_schema, current_catalog) are rejected.
394
409
  */
395
410
  export declare const investigationSqlV2ApiControllerExecuteSqlQuery: <ThrowOnError extends boolean = false>(options: Options<InvestigationSqlV2ApiControllerExecuteSqlQueryData, ThrowOnError>) => import("./client").RequestResult<InvestigationSqlV2ApiControllerExecuteSqlQueryResponses, InvestigationSqlV2ApiControllerExecuteSqlQueryErrors, ThrowOnError>;
396
411
  /**
397
412
  * Reboot a single asset
398
- * Reboot EXACTLY ONE Binalyze AIR asset, identified by a single id or name in the path, via POST /api/v2/assets/{idOrName}/reboot. Use this ONLY for one specific asset. If the user gives two or more assets, a list, a group, or 'all matching' assets, use air-assets-bulk-reboot instead. ALWAYS send dryRun=true on every call (would-run preview); pass dryRun=false only to send the real reboot signal after the user confirms the exact asset. Prefer UUID; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
413
+ * Sends a reboot signal to one asset, identified by UUID or exact name. Returns the created task assignment; dryRun=true returns a same-shape preview without dispatching anything.
399
414
  */
400
415
  export declare const assetActionV2ApiControllerReboot: <ThrowOnError extends boolean = false>(options: Options<AssetActionV2ApiControllerRebootData, ThrowOnError>) => import("./client").RequestResult<AssetActionV2ApiControllerRebootResponses, AssetActionV2ApiControllerRebootErrors, ThrowOnError>;
401
416
  /**
402
417
  * Shut down a single asset
403
- * Shut down EXACTLY ONE Binalyze AIR asset, identified by a single id or name in the path, via POST /api/v2/assets/{idOrName}/shutdown. Use this ONLY for one specific asset. If the user gives two or more assets, a list, a group, or 'all matching' assets, use air-assets-bulk-shutdown instead. ALWAYS send dryRun=true on every call (would-run preview); pass dryRun=false only to send the real shutdown signal after the user confirms the exact asset. Prefer UUID; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
418
+ * Sends a shutdown signal to one asset, identified by UUID or exact name. Returns the created task assignment; dryRun=true returns a same-shape preview without dispatching anything.
404
419
  */
405
420
  export declare const assetActionV2ApiControllerShutdown: <ThrowOnError extends boolean = false>(options: Options<AssetActionV2ApiControllerShutdownData, ThrowOnError>) => import("./client").RequestResult<AssetActionV2ApiControllerShutdownResponses, AssetActionV2ApiControllerShutdownErrors, ThrowOnError>;
406
421
  /**
407
422
  * Isolate a single asset
408
- * Network-isolate EXACTLY ONE Binalyze AIR asset, identified by a single id or name in the path, via POST /api/v2/assets/{idOrName}/isolate. Use this ONLY for one specific asset. If the user gives two or more assets, a list, a group, or 'all matching' assets, use air-assets-bulk-isolate instead. ALWAYS send dryRun=true on every call (would-run preview); pass dryRun=false only to send the real isolation signal after the user confirms the exact asset. Requires the Isolation feature to be enabled. Prefer UUID; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
423
+ * Network-isolates one asset, identified by UUID or exact name. Requires the Isolation feature; returns the created isolation task with the target `isolationStatus`, and dryRun=true returns a same-shape preview without dispatching anything.
409
424
  */
410
425
  export declare const assetActionV2ApiControllerIsolate: <ThrowOnError extends boolean = false>(options: Options<AssetActionV2ApiControllerIsolateData, ThrowOnError>) => import("./client").RequestResult<AssetActionV2ApiControllerIsolateResponses, AssetActionV2ApiControllerIsolateErrors, ThrowOnError>;
411
426
  /**
412
427
  * Unisolate a single asset
413
- * Remove network isolation from EXACTLY ONE Binalyze AIR asset, identified by a single id or name in the path, via POST /api/v2/assets/{idOrName}/unisolate. Use this ONLY for one specific asset. If the user gives two or more assets, a list, a group, or 'all matching' assets, use air-assets-bulk-unisolate instead. ALWAYS send dryRun=true on every call (would-run preview); pass dryRun=false only to send the real unisolation signal after the user confirms the exact asset. Requires the Isolation feature to be enabled. Prefer UUID; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
428
+ * Removes network isolation from one asset, identified by UUID or exact name. Requires the Isolation feature; returns the created unisolation task with the target `isolationStatus`, and dryRun=true returns a same-shape preview without dispatching anything.
414
429
  */
415
430
  export declare const assetActionV2ApiControllerUnisolate: <ThrowOnError extends boolean = false>(options: Options<AssetActionV2ApiControllerUnisolateData, ThrowOnError>) => import("./client").RequestResult<AssetActionV2ApiControllerUnisolateResponses, AssetActionV2ApiControllerUnisolateErrors, ThrowOnError>;
416
431
  /**
417
432
  * Retrieve the agent logs of a single asset
418
- * Retrieve agent logs for a task on EXACTLY ONE Binalyze AIR asset, identified by a single id or name in the path, via POST /api/v2/assets/{idOrName}/log-retrieval. Use this ONLY for one specific asset; it also requires the taskId whose logs should be collected. If the user gives two or more assets, a list, or a group, use air-assets-bulk-log-retrieval instead. ALWAYS send dryRun=true on every call (would-run preview); pass dryRun=false only to assign the real log-retrieval task after the user confirms the asset and task. Prefer UUID; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
433
+ * Assigns a log-retrieval task that collects the agent logs from one asset, identified by UUID or exact name. Returns the created task assignment; dryRun=true returns a same-shape preview without dispatching anything.
419
434
  */
420
435
  export declare const assetActionV2ApiControllerRetrieveLogs: <ThrowOnError extends boolean = false>(options: Options<AssetActionV2ApiControllerRetrieveLogsData, ThrowOnError>) => import("./client").RequestResult<AssetActionV2ApiControllerRetrieveLogsResponses, AssetActionV2ApiControllerRetrieveLogsErrors, ThrowOnError>;
421
436
  /**
422
437
  * Update the agent version on a single asset
423
- * Update the agent version on EXACTLY ONE Binalyze AIR asset, identified by a single id or name in the path, via POST /api/v2/assets/{idOrName}/update. Use this ONLY for one specific asset. If the user gives two or more assets, a list, a group, or 'all matching' assets, use air-assets-bulk-version-update instead. There is no version targeting: the agent always updates to the console's current supported version. ALWAYS send dryRun=true on every call (would-update preview); pass dryRun=false only to assign the real immediate one-time update task after the user confirms the exact asset. Prefer UUID; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
438
+ * Assigns a one-time task that updates the agent on one asset to the console's current supported version; no specific version can be targeted. Returns the created task assignment; dryRun=true returns a same-shape preview without dispatching anything.
424
439
  */
425
440
  export declare const assetActionV2ApiControllerVersionUpdate: <ThrowOnError extends boolean = false>(options: Options<AssetActionV2ApiControllerVersionUpdateData, ThrowOnError>) => import("./client").RequestResult<AssetActionV2ApiControllerVersionUpdateResponses, AssetActionV2ApiControllerVersionUpdateErrors, ThrowOnError>;
426
441
  /**
427
442
  * Enable maintenance mode on a single asset
428
- * Enable maintenance mode on EXACTLY ONE Binalyze AIR asset, identified by a single id or name in the path, via POST /api/v2/assets/{idOrName}/enable-maintenance. Use this ONLY for one specific asset. If the user gives two or more assets, a list, a group, or 'all matching' assets, use air-assets-bulk-enable-maintenance instead. ALWAYS send dryRun=true on every call (would-change preview); pass dryRun=false only to apply the real change after the user confirms the exact asset. Updates the asset synchronously (no task is created). A no-op (already in maintenance mode) returns HTTP 200 with a NO_OP entry in errors[]. Prefer UUID; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
443
+ * Enables maintenance mode on one asset, identified by UUID or exact name. The change is applied synchronously without creating a task; an asset already in maintenance mode returns HTTP 200 with a NO_OP entry in errors[], and dryRun=true returns a same-shape preview.
429
444
  */
430
445
  export declare const assetActionV2ApiControllerEnableMaintenance: <ThrowOnError extends boolean = false>(options: Options<AssetActionV2ApiControllerEnableMaintenanceData, ThrowOnError>) => import("./client").RequestResult<AssetActionV2ApiControllerEnableMaintenanceResponses, AssetActionV2ApiControllerEnableMaintenanceErrors, ThrowOnError>;
431
446
  /**
432
447
  * Disable maintenance mode on a single asset
433
- * Disable maintenance mode on EXACTLY ONE Binalyze AIR asset, identified by a single id or name in the path, via POST /api/v2/assets/{idOrName}/disable-maintenance. Use this ONLY for one specific asset. If the user gives two or more assets, a list, a group, or 'all matching' assets, use air-assets-bulk-disable-maintenance instead. ALWAYS send dryRun=true on every call (would-change preview); pass dryRun=false only to apply the real change after the user confirms the exact asset. Updates the asset synchronously (no task is created). A no-op (not in maintenance mode) returns HTTP 200 with a NO_OP entry in errors[]. Prefer UUID; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
448
+ * Disables maintenance mode on one asset, identified by UUID or exact name. The change is applied synchronously without creating a task; an asset not in maintenance mode returns HTTP 200 with a NO_OP entry in errors[], and dryRun=true returns a same-shape preview.
434
449
  */
435
450
  export declare const assetActionV2ApiControllerDisableMaintenance: <ThrowOnError extends boolean = false>(options: Options<AssetActionV2ApiControllerDisableMaintenanceData, ThrowOnError>) => import("./client").RequestResult<AssetActionV2ApiControllerDisableMaintenanceResponses, AssetActionV2ApiControllerDisableMaintenanceErrors, ThrowOnError>;
436
451
  /**
437
452
  * Import a PPC file into an existing asset
438
- * Import a case PPC evidence file into an EXISTING Binalyze AIR asset via POST /api/v2/assets/{idOrName}/import (multipart upload). Use this when the asset already exists in AIR and you want to attach/import a .ppc captured from it (a real PPC zip containing Case.db). Optionally attach the import to a case via caseIdOrName (resolved as uuid or name). Success response (200): result.entities[0] = { id (asset id), name (asset name), ppcFileName, importedAt }. Unknown asset -> 404. KNOWN ISSUE: a corrupt or non-zip file currently returns 500 INTERNAL_ERROR (not a clean 400) -- treat that 500 as 'invalid PPC file', do not retry blindly and do not report it as a server outage. ALWAYS send dryRun=true first (generic preview; does not validate the file); pass dryRun=false only to perform the real import after the user confirms the asset and file. For an off-network Task.dat that should create an offline task, use air-assets-off-network-import instead. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
453
+ * Imports an uploaded PPC evidence file (multipart field `ppcFile`, max 4 GB) into an existing asset identified by UUID or exact name, optionally attaching it to a case via `caseIdOrName`. Returns the asset identity together with the imported file name and import time.
439
454
  */
440
455
  export declare const assetActionV2ApiControllerImportPpcToExistingAsset: <ThrowOnError extends boolean = false>(options: Options<AssetActionV2ApiControllerImportPpcToExistingAssetData, ThrowOnError>) => import("./client").RequestResult<AssetActionV2ApiControllerImportPpcToExistingAssetResponses, AssetActionV2ApiControllerImportPpcToExistingAssetErrors, ThrowOnError>;
441
456
  /**
442
457
  * Reboot multiple assets
443
- * Reboot MULTIPLE Binalyze AIR assets in one call, listed by id or name in assets[], via POST /api/v2/reboot. Use this ONLY when the user targets two or more assets, a list, or a group. For exactly ONE asset, use air-assets-reboot (the single-asset tool) instead. ALWAYS send dryRun=true on every call (preview of eligible assets and warnings); pass dryRun=false only to send the real reboot signals after the user confirms the asset list. Use failIfNumberOfAssetsGreaterThan as a safety cap.
458
+ * Sends a reboot signal to multiple assets, listed by id or name in `assets[]` and optionally scoped by `organizations`. Supports dryRun previews and the `failIfNumberOfAssetsGreaterThan` safety cap; returns per-asset task entries plus warnings for skipped assets.
444
459
  */
445
460
  export declare const assetBulkActionV2ApiControllerReboot: <ThrowOnError extends boolean = false>(options: Options<AssetBulkActionV2ApiControllerRebootData, ThrowOnError>) => import("./client").RequestResult<AssetBulkActionV2ApiControllerRebootResponses, AssetBulkActionV2ApiControllerRebootErrors, ThrowOnError>;
446
461
  /**
447
462
  * Shut down multiple assets
448
- * Shut down MULTIPLE Binalyze AIR assets in one call, listed by id or name in assets[], via POST /api/v2/shutdown. Use this ONLY when the user targets two or more assets, a list, or a group. For exactly ONE asset, use air-assets-shutdown (the single-asset tool) instead. ALWAYS send dryRun=true on every call (preview of eligible assets and warnings); pass dryRun=false only to send the real shutdown signals after the user confirms the asset list. Use failIfNumberOfAssetsGreaterThan as a safety cap.
463
+ * Sends a shutdown signal to multiple assets, listed by id or name in `assets[]` and optionally scoped by `organizations`. Supports dryRun previews and the `failIfNumberOfAssetsGreaterThan` safety cap; returns per-asset task entries plus warnings for skipped assets.
449
464
  */
450
465
  export declare const assetBulkActionV2ApiControllerShutdown: <ThrowOnError extends boolean = false>(options: Options<AssetBulkActionV2ApiControllerShutdownData, ThrowOnError>) => import("./client").RequestResult<AssetBulkActionV2ApiControllerShutdownResponses, AssetBulkActionV2ApiControllerShutdownErrors, ThrowOnError>;
451
466
  /**
452
467
  * Isolate multiple assets
453
- * Network-isolate MULTIPLE Binalyze AIR assets in one call, listed by id or name in assets[], via POST /api/v2/isolate. Use this ONLY when the user targets two or more assets, a list, or a group. For exactly ONE asset, use air-assets-isolate (the single-asset tool) instead. ALWAYS send dryRun=true on every call (preview of eligible assets and warnings); pass dryRun=false only to send the real isolation signals after the user confirms the asset list. Requires the Isolation feature to be enabled. Use failIfNumberOfAssetsGreaterThan as a safety cap.
468
+ * Network-isolates multiple assets, listed by id or name in `assets[]` and optionally scoped by `organizations`. Requires the Isolation feature; supports dryRun previews and the `failIfNumberOfAssetsGreaterThan` safety cap. Returns per-asset task entries plus warnings for skipped assets.
454
469
  */
455
470
  export declare const assetBulkActionV2ApiControllerIsolate: <ThrowOnError extends boolean = false>(options: Options<AssetBulkActionV2ApiControllerIsolateData, ThrowOnError>) => import("./client").RequestResult<AssetBulkActionV2ApiControllerIsolateResponses, AssetBulkActionV2ApiControllerIsolateErrors, ThrowOnError>;
456
471
  /**
457
472
  * Unisolate multiple assets
458
- * Remove network isolation from MULTIPLE Binalyze AIR assets in one call, listed by id or name in assets[], via POST /api/v2/unisolate. Use this ONLY when the user targets two or more assets, a list, or a group. For exactly ONE asset, use air-assets-unisolate (the single-asset tool) instead. ALWAYS send dryRun=true on every call (preview of eligible assets and warnings); pass dryRun=false only to send the real unisolation signals after the user confirms the asset list. Requires the Isolation feature to be enabled. Use failIfNumberOfAssetsGreaterThan as a safety cap.
473
+ * Removes network isolation from multiple assets, listed by id or name in `assets[]` and optionally scoped by `organizations`. Requires the Isolation feature; supports dryRun previews and the `failIfNumberOfAssetsGreaterThan` safety cap. Returns per-asset task entries plus warnings for skipped assets.
459
474
  */
460
475
  export declare const assetBulkActionV2ApiControllerUnisolate: <ThrowOnError extends boolean = false>(options: Options<AssetBulkActionV2ApiControllerUnisolateData, ThrowOnError>) => import("./client").RequestResult<AssetBulkActionV2ApiControllerUnisolateResponses, AssetBulkActionV2ApiControllerUnisolateErrors, ThrowOnError>;
461
476
  /**
462
477
  * Retrieve the agent logs of multiple assets
463
- * Retrieve agent logs from MULTIPLE Binalyze AIR assets in one call, listed by id or name in assets[], via POST /api/v2/log-retrieval. Use this ONLY when the user targets two or more assets, a list, or a group. For exactly ONE asset (and a specific taskId), use air-assets-log-retrieval (the single-asset tool) instead. ALWAYS send dryRun=true on every call (preview of eligible assets and warnings); pass dryRun=false only to assign the real log-retrieval task after the user confirms the asset list. Use failIfNumberOfAssetsGreaterThan as a safety cap.
478
+ * Assigns a log-retrieval task to multiple assets, listed by id or name in `assets[]` and optionally scoped by `organizations`. Supports dryRun previews and the `failIfNumberOfAssetsGreaterThan` safety cap; returns per-asset task entries plus warnings for skipped assets.
464
479
  */
465
480
  export declare const assetBulkActionV2ApiControllerRetrieveLogs: <ThrowOnError extends boolean = false>(options: Options<AssetBulkActionV2ApiControllerRetrieveLogsData, ThrowOnError>) => import("./client").RequestResult<AssetBulkActionV2ApiControllerRetrieveLogsResponses, AssetBulkActionV2ApiControllerRetrieveLogsErrors, ThrowOnError>;
466
481
  /**
467
482
  * Update the agent version on multiple assets
468
- * Update the agent version on MULTIPLE Binalyze AIR assets in one call, listed by id or name in assets[], via POST /api/v2/version-update. Use this ONLY when the user targets two or more assets, a list, or a group. For exactly ONE asset, use air-assets-version-update (the single-asset tool) instead. There is no version targeting: agents always update to the console's current supported version. ALWAYS send dryRun=true on every call (preview of eligible assets and warnings); pass dryRun=false only to assign the real immediate one-time update task after the user confirms the asset list. Provide organizations when names are ambiguous across orgs. Use failIfNumberOfAssetsGreaterThan as a safety cap.
483
+ * Assigns an immediate one-time agent version update task to multiple assets, listed by id or name in `assets[]` and optionally scoped by `organizations`. Agents update to the console's current supported version; there is no version targeting. Supports dryRun previews and the `failIfNumberOfAssetsGreaterThan` safety cap; returns per-asset task entries plus warnings for skipped assets.
469
484
  */
470
485
  export declare const assetBulkActionV2ApiControllerVersionUpdate: <ThrowOnError extends boolean = false>(options: Options<AssetBulkActionV2ApiControllerVersionUpdateData, ThrowOnError>) => import("./client").RequestResult<AssetBulkActionV2ApiControllerVersionUpdateResponses, AssetBulkActionV2ApiControllerVersionUpdateErrors, ThrowOnError>;
471
486
  /**
472
487
  * Enable maintenance mode on multiple assets
473
- * Enable maintenance mode on MULTIPLE Binalyze AIR assets in one call, listed by id or name in assets[], via POST /api/v2/enable-maintenance. Use this ONLY when the user targets two or more assets, a list, or a group. For exactly ONE asset, use air-assets-enable-maintenance (the single-asset tool) instead. ALWAYS send dryRun=true on every call (preview of eligible assets and warnings); pass dryRun=false only to apply the real change after the user confirms the asset list. These endpoints update assets synchronously and do not create tasks. Provide organizations when names are ambiguous across orgs.
488
+ * Enables maintenance mode on multiple assets, listed by id or name in `assets[]` and optionally scoped by `organizations`. The change is applied synchronously without creating tasks; supports dryRun previews and returns per-asset entries plus warnings for assets already in maintenance mode or otherwise skipped.
474
489
  */
475
490
  export declare const assetBulkActionV2ApiControllerEnableMaintenance: <ThrowOnError extends boolean = false>(options: Options<AssetBulkActionV2ApiControllerEnableMaintenanceData, ThrowOnError>) => import("./client").RequestResult<AssetBulkActionV2ApiControllerEnableMaintenanceResponses, AssetBulkActionV2ApiControllerEnableMaintenanceErrors, ThrowOnError>;
476
491
  /**
477
492
  * Disable maintenance mode on multiple assets
478
- * Disable maintenance mode on MULTIPLE Binalyze AIR assets in one call, listed by id or name in assets[], via POST /api/v2/disable-maintenance. Use this ONLY when the user targets two or more assets, a list, or a group. For exactly ONE asset, use air-assets-disable-maintenance (the single-asset tool) instead. ALWAYS send dryRun=true on every call (preview of eligible assets and warnings); pass dryRun=false only to apply the real change after the user confirms the asset list. These endpoints update assets synchronously and do not create tasks. Provide organizations when names are ambiguous across orgs.
493
+ * Disables maintenance mode on multiple assets, listed by id or name in `assets[]` and optionally scoped by `organizations`. The change is applied synchronously without creating tasks; supports dryRun previews and returns per-asset entries plus warnings for assets not in maintenance mode or otherwise skipped.
479
494
  */
480
495
  export declare const assetBulkActionV2ApiControllerDisableMaintenance: <ThrowOnError extends boolean = false>(options: Options<AssetBulkActionV2ApiControllerDisableMaintenanceData, ThrowOnError>) => import("./client").RequestResult<AssetBulkActionV2ApiControllerDisableMaintenanceResponses, AssetBulkActionV2ApiControllerDisableMaintenanceErrors, ThrowOnError>;
481
496
  /**
482
497
  * Add tag(s) to multiple assets
483
- * Add tags to one or more Binalyze AIR assets in one call via POST /api/v2/assets/tags. This APPENDS the given tags to the assets in assets[]; it is not a full replacement (use air-assets-tags to replace one asset's whole tag set). Idempotent: assets that already carry a tag are not re-updated but still report 'tags-added'. Success response (200): result.entities[] = {asset{id,name}, action 'tags-added', addedTags[]}; unresolved/skipped inputs land in result.warnings[] = {asset, action 'skipped', reason}. Zero resolved assets -> 404 'No assets matched'. ALWAYS send dryRun=true first (preview); pass dryRun=false only to apply the real tag add after the user confirms the asset list. UUID entries carry their own org; ambiguous names may need organizations.
498
+ * Appends the given `tags` to every asset listed in `assets[]` in a single call. Existing tags are kept; assets that already carry a tag are unchanged but still reported. Returns per-asset results in `entities[]` and skipped inputs in `warnings[]`.
484
499
  */
485
500
  export declare const assetBulkMetadataV2ApiControllerAddTags: <ThrowOnError extends boolean = false>(options: Options<AssetBulkMetadataV2ApiControllerAddTagsData, ThrowOnError>) => import("./client").RequestResult<AssetBulkMetadataV2ApiControllerAddTagsResponses, AssetBulkMetadataV2ApiControllerAddTagsErrors, ThrowOnError>;
486
501
  /**
487
502
  * Remove tag(s) from multiple assets
488
- * Remove tags from one or more Binalyze AIR assets in one call via POST /api/v2/assets/tags/delete. This DELETES the given tags from the assets in assets[] (only the listed tags are removed; other tags stay; the tag catalog row itself is not deleted). Responses (200): real removal returns result.entities[] = {asset{id,name}, action 'tags-removed', removedTags[]}; with ?dryRun=true the action is 'would-remove-tags' and nothing changes. Zero resolved assets -> 404 'No assets matched'. ALWAYS send dryRun=true first (schema-specific would-remove preview); pass dryRun=false only to apply the real tag removal after the user confirms the asset list. UUID entries carry their own org; ambiguous names may need organizations.
503
+ * Removes the given `tags` from every asset listed in `assets[]` in a single call. Only the listed tags are removed; other tags and the tag catalog itself are untouched. Supports a `dryRun` preview. Returns per-asset results in `entities[]` and skipped inputs in `warnings[]`.
489
504
  */
490
505
  export declare const assetBulkMetadataV2ApiControllerRemoveTags: <ThrowOnError extends boolean = false>(options: Options<AssetBulkMetadataV2ApiControllerRemoveTagsData, ThrowOnError>) => import("./client").RequestResult<AssetBulkMetadataV2ApiControllerRemoveTagsResponses, AssetBulkMetadataV2ApiControllerRemoveTagsErrors, ThrowOnError>;
491
506
  /**
492
507
  * Set the update-exclusion flag on multiple assets
493
- * Set or clear the 'excluded from automatic agent updates' flag on one or more Binalyze AIR assets via PATCH /api/v2/assets/update-exclusion. excludedFromUpdates=true excludes the assets from auto-updates; false re-includes them. Success response (200): result.entities[] only contains assets that were actually updated ({asset{id,name}, action 'update-exclusion-set', excludedFromUpdates, updatedAt}); assets with an unsupported OS are NOT updated and land in result.warnings[] with action 'skipped' and reason 'Asset has unsupported OS for update'. entities may be empty when every asset was skipped -- report that honestly, do not claim an update. Zero resolved assets -> 404 'No assets matched'. ALWAYS send dryRun=true first (generic preview); pass dryRun=false only to apply the real change after the user confirms the asset list. UUID entries carry their own org; ambiguous names may need organizations.
508
+ * Sets or clears the "excluded from automatic agent updates" flag on every asset listed in `assets[]`. `excludedFromUpdates=true` excludes the assets from auto-updates; `false` re-includes them. Returns the changed assets in `entities[]`; assets with an unsupported OS are skipped and reported in `warnings[]`.
494
509
  */
495
510
  export declare const assetBulkMetadataV2ApiControllerSetUpdateExclusion: <ThrowOnError extends boolean = false>(options: Options<AssetBulkMetadataV2ApiControllerSetUpdateExclusionData, ThrowOnError>) => import("./client").RequestResult<AssetBulkMetadataV2ApiControllerSetUpdateExclusionResponses, AssetBulkMetadataV2ApiControllerSetUpdateExclusionErrors, ThrowOnError>;
496
511
  /**
497
512
  * Set or clear the relay connection route on multiple assets
498
- * Set or clear the relay-server connection route of one or more Binalyze AIR assets via PATCH /api/v2/assets/connection-route. relayServerId is the numeric relay server id to route through; pass null to CLEAR the route (direct connection). The relay server's organization must match the assets' organization. ALWAYS send dryRun=true on every call (would-change preview of resolved assets and warnings); pass dryRun=false only to apply the real change after the user confirms the asset list. UUID entries carry their own org; ambiguous names may need organizations.
513
+ * Sets or clears the relay-server connection route of every asset listed in `assets[]`. `relayServerId` is the numeric relay server to route through; `null` clears the route (direct connection). The relay server's organization must match the assets' organization. Returns per-asset results in `entities[]` and skipped inputs in `warnings[]`.
499
514
  */
500
515
  export declare const assetBulkMetadataV2ApiControllerSetConnectionRoute: <ThrowOnError extends boolean = false>(options: Options<AssetBulkMetadataV2ApiControllerSetConnectionRouteData, ThrowOnError>) => import("./client").RequestResult<AssetBulkMetadataV2ApiControllerSetConnectionRouteResponses, AssetBulkMetadataV2ApiControllerSetConnectionRouteErrors, ThrowOnError>;
501
516
  /**
502
517
  * Set the demanded MITRE ATT&CK Database version on multiple assets
503
- * Set the demanded MITRE ATT&CK database version on one or more Binalyze AIR assets via PATCH /api/v2/assets/mitre-attack-database/version. This is the MITRE ATT&CK DATABASE version, not the agent version (use air-assets-bulk-version-update for the agent). PRECONDITIONS: (1) MITRE auto-update must be OFF, otherwise the call fails 400 with code MITRE_AUTO_UPDATE_ENABLED and a message telling how to disable it (PUT /api/public/settings/mitre-attack-database with autoUpdateEnabled=false). (2) version must be one that EXISTS in the system -- versions look like '13.5.2' (no 'v' prefix); list them via GET /api/public/settings/mitre-attack-database/versions; an unknown version fails 400 'is not available in the system'. Success response (200): result.entities[] only contains assets that were actually updated ({asset{id,name}, action 'mitre-database-updated', version, assignedAt}); INELIGIBLE assets are NOT updated and land in result.warnings[] with action 'skipped' and a reason ('Asset subtype is not endpoint', 'Asset is not managed', or 'Agent build does not support MITRE database updates'). entities may be empty when every asset was skipped -- report that honestly, do not claim an update. ALWAYS send dryRun=true first (generic preview; it does NOT check auto-update or version validity); pass dryRun=false only to apply the real change after the user confirms. UUID entries carry their own org; ambiguous names may need organizations.
518
+ * Sets the demanded MITRE ATT&CK database version on every asset listed in `assets[]`. Requires MITRE auto-update to be disabled and `version` to be one available in the system. Returns the updated assets in `entities[]`; ineligible assets are skipped and reported in `warnings[]`.
504
519
  */
505
520
  export declare const assetBulkMetadataV2ApiControllerSetMitreDatabaseVersion: <ThrowOnError extends boolean = false>(options: Options<AssetBulkMetadataV2ApiControllerSetMitreDatabaseVersionData, ThrowOnError>) => import("./client").RequestResult<AssetBulkMetadataV2ApiControllerSetMitreDatabaseVersionResponses, AssetBulkMetadataV2ApiControllerSetMitreDatabaseVersionErrors, ThrowOnError>;
506
521
  /**
507
522
  * Bulk delete assets (purge / uninstall / purge-and-uninstall)
508
- * Delete / decommission one or more Binalyze AIR assets via POST /api/v2/assets/delete. DESTRUCTIVE and largely irreversible (uninstall signals a real agent). mode selects the action: 'purge' (remove console records + evidence files; agent stays), 'uninstall' (uninstall the agent; records stay), or 'purge-and-uninstall' (both). mode 'purge' additionally requires the PurgeWithoutUninstall feature flag; when disabled the call fails 403 Forbidden. Invalid mode -> 400. Zero resolved assets -> 404 'No assets matched'. Responses: dryRun preview (200) returns result.entities[] = {asset{id,name}, mode, action 'would-delete', effects[] (e.g. 'agent-uninstall','console-records','evidence-files')}; the REAL delete (200) returns result = { deletedCount, warnings[] }. ALWAYS send dryRun=true first and show the user the per-asset effects; pass dryRun=false only after the user explicitly confirms the exact asset list and mode. UUID entries carry their own org; ambiguous names may need organizations. Use failIfNumberOfAssetsGreaterThan as a safety cap.
523
+ * Deletes or decommissions every asset listed in `assets[]`. `mode` selects the action: `purge` (remove console records and evidence files), `uninstall` (uninstall the agent), or `purge-and-uninstall` (both). A `dryRun` preview returns the per-asset effects; the real delete returns `deletedCount` plus any `warnings[]`.
509
524
  */
510
525
  export declare const assetBulkMetadataV2ApiControllerDeleteAssets: <ThrowOnError extends boolean = false>(options: Options<AssetBulkMetadataV2ApiControllerDeleteAssetsData, ThrowOnError>) => import("./client").RequestResult<AssetBulkMetadataV2ApiControllerDeleteAssetsResponses, AssetBulkMetadataV2ApiControllerDeleteAssetsErrors, ThrowOnError>;
511
526
  /**
512
527
  * Import an off-network PPC (find-or-create asset + offline task)
513
- * Import an OFF-NETWORK Task.dat via POST /api/v2/assets/import (multipart upload) and create an OFFLINE TASK (offline-triage or offline-acquisition). IMPORTANT semantics: this endpoint does NOT create or find an asset -- it only creates a task from the uploaded Task.dat (the asset is resolved later, when the evidence collection zip is imported into the task). The file must be a valid RC4-encrypted Task.dat; anything else (e.g. a regular case .ppc) is rejected 400 'Missing or invalid Task.dat format!'. Requires the Off-Network Responder feature. Success response (200): result.entities[0] = { taskId, taskName, organizations: [{ id, name }], taskDetailsViewUrl, ppcFileName, importedAt } -- a task summary, no asset id/name. organizations must resolve to EXACTLY ONE organization id (the task is single-org). Optionally attach to a case via caseIdOrName (unknown case -> 400 'Case not found'). ALWAYS send dryRun=true first (generic preview; does not validate the file); pass dryRun=false only to perform the real import after the user confirms. To import a case PPC into an asset that already exists in AIR, use air-assets-import instead.
528
+ * Imports an off-network Task.dat (multipart upload; field `ppcFile`) and creates an offline task. The asset itself is resolved later, when the evidence collection zip is imported into the task. `organizations` must resolve to exactly one organization; `caseIdOrName` optionally attaches the task to a case. Requires the Off-Network Responder feature. Returns the created task summary.
514
529
  */
515
530
  export declare const assetBulkMetadataV2ApiControllerImportOffNetworkPpc: <ThrowOnError extends boolean = false>(options: Options<AssetBulkMetadataV2ApiControllerImportOffNetworkPpcData, ThrowOnError>) => import("./client").RequestResult<AssetBulkMetadataV2ApiControllerImportOffNetworkPpcResponses, AssetBulkMetadataV2ApiControllerImportOffNetworkPpcErrors, ThrowOnError>;
516
531
  /**
517
532
  * Run triage rule(s) on multiple assets
518
- * Run triage rule(s) IMMEDIATELY on one or more Binalyze AIR assets via POST /api/v2/triage. Creates ONE triage task (status 'assigned') covering every runnable asset. This tool is for IMMEDIATE runs only -- it deliberately has NO schedule and NO cpuLimit parameter. To create a recurring/scheduled triage (or set a CPU cap), use air-assets-bulk-triage-scheduled instead; do NOT try to pass schedule fields here. ruleIds accept a rule UUID OR an exact rule name (names are resolved within the assets' authorized org scope; an ambiguous or unknown name becomes a per-input error in result.errors[]). NEVER invent or guess a rule id/name -- if the user did not give one, ask or look it up first. OMIT every optional argument the user did not ask for; never fill placeholders (no empty strings). Use assertions.failIfNumberOfAssetsGreaterThan as a safety cap: the task is rejected (406) if more assets match than the cap allows; omitted, it defaults to the resolved asset count. Success response (200): result.entities[0] = { id (task id), name, assets { assetCount, assetsUrl }, assignedAssetCount, organizations [{id,name}], rules [{id,name,engine}], status 'assigned', source, createdBy, createdAt, taskDetailsViewUrl }; result.errors[] lists per-input skips (e.g. 'Asset not found: X'). Zero matching assets -> 404 'No matching assets found'; zero matching rules -> 404 'No matching triage rules found'. ALWAYS send dryRun=true first (generic preview; it does NOT validate rules); pass dryRun=false only to create the real task after the user confirms. A preview is NOT a created task; only dryRun=false with ok=true and a returned task id means it was created -- treat ok=false / non-2xx / the error field as failure. Supports Idempotency-Key so a retried call replays the first response instead of creating duplicate tasks.
533
+ * Runs one or more triage (hunt) rules across multiple assets, creating a single task that covers every runnable asset. Assets and rules are referenced by id or exact name; inputs that cannot be resolved are reported per input in `result.errors[]` instead of failing the call. Returns the created task entity with its asset rollup, organizations and rules.
519
534
  */
520
535
  export declare const assetBulkTriageV2ApiControllerRunTriage: <ThrowOnError extends boolean = false>(options: Options<AssetBulkTriageV2ApiControllerRunTriageData, ThrowOnError>) => import("./client").RequestResult<AssetBulkTriageV2ApiControllerRunTriageResponses, AssetBulkTriageV2ApiControllerRunTriageErrors, ThrowOnError>;
521
536
  /**
522
537
  * List InterAct messages for an asset
523
- * List the InterAct shell messages of EXACTLY ONE Binalyze AIR asset across all its sessions via GET /api/v2/assets/{idOrName}/interact. Read-only; returns a paginated envelope of messages (command + latest response, status, detectedType, output/outputUrl). Supports filtering by session and creation date range. Use this when the user asks for an asset's shell command history. Prefer UUID; names can be ambiguous across organizations. Omit any filter the user did not ask for. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
538
+ * Lists the InterAct shell messages recorded for one asset, identified by UUID or exact name, across all of its sessions. Supports offset pagination, sorting, and filtering by session and creation date range. Each entry carries the command, its status, and the output inline or via outputUrl.
524
539
  */
525
540
  export declare const assetInteractMessageV2ApiControllerListForAsset: <ThrowOnError extends boolean = false>(options: Options<AssetInteractMessageV2ApiControllerListForAssetData, ThrowOnError>) => import("./client").RequestResult<AssetInteractMessageV2ApiControllerListForAssetResponses, AssetInteractMessageV2ApiControllerListForAssetErrors, ThrowOnError>;
526
541
  /**
527
542
  * Run an InterAct command on an asset
528
- * Run an InterAct shell command on EXACTLY ONE Binalyze AIR asset via POST /api/v2/assets/{idOrName}/interact. WARNING: this endpoint has NO dry-run preview -- a successful call EXECUTES the command on the live endpoint IMMEDIATELY. Confirm the exact asset and command with the user before calling; never run a destructive command without explicit confirmation. Sync mode (default) waits for the result up to the server timeout and returns 200 with the message (output inlined when small, else outputUrl); a timeout or async=true returns 202 with status 'running' and a messageId to poll. COMMAND ROUTING: when the first word matches an AIR native command (ls/dir, cd, ...; list via air-interact-commands), the NATIVE implementation runs -- it has its own option set and does NOT accept POSIX/shell flags (e.g. 'ls -la' fails; the native form is 'ls ext'). For a real shell command, prefix it with exec (e.g. 'exec ls -la /etc'); anything that matches no native command is auto-run as exec. When a native command fails on its flag parser, the response's `hint` field explains this and gives the exec form -- relay it to the user. Use the returned sessionId/messageId with air-assets-interact-message, air-assets-interact-cancel, or air-assets-interact-close. Prefer UUID; names can be ambiguous across organizations. If the asset name looks partial or you are not certain it is the EXACT name (e.g. user says 'mrv'), do not ask the user to clarify blindly -- either call this tool with that name (a non-matching name is safe: it executes nothing and returns HTTP 404 with suggestions) or first resolve it with air-assets-filtered-list using searchTerm=<the name>, then confirm with the user. Likewise, if the COMMAND looks like a typo of an AIR native command (e.g. 'pslt'), do not guess from memory -- call air-interact-commands (optionally searchTerm) and suggest the closest real command name from its `commandNames`; note a non-native command may still be a valid shell command, so only offer 'did you mean' when a close native match exists. Also: when a run COMPLETES with a failed command (non-zero exit) that was an unrecognized native command, the response body (not the error envelope) surfaces `suggestions` as native-command NAME strings (e.g. ['pslist']) -- distinct from the asset-name suggestion objects on a 404 -- tell the user 'the command failed; did you mean <name>?' and offer to re-run the corrected command. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id. Omit optional arguments the user did not ask for.
543
+ * Runs an InterAct shell command on one asset, identified by UUID or exact name. In synchronous mode (default) the call waits for the result and returns the completed message with its output; when the command is still running after the sync timeout, or when async=true, it returns HTTP 202 with a running message handle to poll.
529
544
  */
530
545
  export declare const assetInteractV2ApiControllerRunCommand: <ThrowOnError extends boolean = false>(options: Options<AssetInteractV2ApiControllerRunCommandData, ThrowOnError>) => import("./client").RequestResult<AssetInteractV2ApiControllerRunCommandResponses, AssetInteractV2ApiControllerRunCommandErrors, ThrowOnError>;
531
546
  /**
532
547
  * Cancel the running InterAct command on an asset
533
- * Cancel the running InterAct shell command on EXACTLY ONE Binalyze AIR asset via POST /api/v2/assets/{idOrName}/interact/cancel. WARNING: this endpoint has NO dry-run preview -- it sends a real interrupt to the running command; the session stays open. With no body it cancels the caller's active session's running command. Pass messageId to target a specific running message, or sessionId to target a specific session. Cancellation is best-effort (the agent confirms asynchronously); the returned message may still read as running. 404 'No active session' / 'Message not found' when nothing matches; 400 'No running command to cancel' / 'Message is not running' when there is nothing to interrupt. Prefer UUID for the asset. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
548
+ * Sends a best-effort interrupt to a running InterAct shell command on one asset; the session stays open. With no body it targets the running command of the caller's active session; pass messageId or sessionId to target a specific command or session. Returns the affected message entity.
534
549
  */
535
550
  export declare const assetInteractV2ApiControllerCancelCommand: <ThrowOnError extends boolean = false>(options: Options<AssetInteractV2ApiControllerCancelCommandData, ThrowOnError>) => import("./client").RequestResult<AssetInteractV2ApiControllerCancelCommandResponses, AssetInteractV2ApiControllerCancelCommandErrors, ThrowOnError>;
536
551
  /**
537
552
  * Close the InterAct session on an asset
538
- * Close the InterAct shell session on EXACTLY ONE Binalyze AIR asset via POST /api/v2/assets/{idOrName}/interact/close. WARNING: this endpoint has NO dry-run preview -- it really closes the session. With no body it closes the caller's active session; pass sessionId to target a specific session. If the session has running commands and force is omitted/false, the API returns 400 with errors[0].details.runningMessageIds; set force=true to cancel those commands first and then close. Success returns { sessionId, closedAt, cancelledMessageIds[] }. 404 'No active session' when nothing matches. Prefer UUID for the asset. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
553
+ * Closes an InterAct shell session on one asset. With no body it closes the caller's active session; pass sessionId to target a specific session and force=true to cancel any running commands first. Returns the session id, the close timestamp, and the ids of cancelled messages.
539
554
  */
540
555
  export declare const assetInteractV2ApiControllerCloseSession: <ThrowOnError extends boolean = false>(options: Options<AssetInteractV2ApiControllerCloseSessionData, ThrowOnError>) => import("./client").RequestResult<AssetInteractV2ApiControllerCloseSessionResponses, AssetInteractV2ApiControllerCloseSessionErrors, ThrowOnError>;
541
556
  /**
542
557
  * Get asset issue/actionability stats
543
- * Get aggregate Binalyze AIR asset statistics from GET /api/v2/assets/stats. Use this for fleet summaries, counts, and breakdowns, not for listing individual assets. Only include filters when the user explicitly asks for scoped stats.
558
+ * Returns aggregate statistics over the assets visible to the caller, grouped into version, connectivity, deployment, assignment and isolation domains. Accepts the same `filter` and `organizations` query parameters as the asset list endpoint.
544
559
  */
545
560
  export declare const assetV2ApiControllerGetStats: <ThrowOnError extends boolean = false>(options?: Options<AssetV2ApiControllerGetStatsData, ThrowOnError>) => import("./client").RequestResult<AssetV2ApiControllerGetStatsResponses, AssetV2ApiControllerGetStatsErrors, ThrowOnError>;
546
561
  /**
547
562
  * Export assets as CSV
548
- * Export Binalyze AIR assets as a CSV file via GET /api/v2/assets/export and save it inside the current worktree. Read-only on the server side; no dryRun needed. The filter model mirrors air-assets-filtered-list (searchTerm, subtype, status, platform, isolation), but tag filtering (tagIds) is NOT applied on export. organizations defaults to all accessible organizations when omitted. Returns {outputPath, byteLength}; default output is artifacts/assets.csv. Use air-assets-list or air-assets-filtered-list instead when the user just wants to read assets in the chat.
563
+ * Exports the assets matching the given filter as a CSV file stream. Supports the same `filter` and `organizations` parameters as the asset list endpoint, except that tag filtering (tagIds) is not applied on export; `columnsOrder` controls the leading column order of the CSV.
549
564
  */
550
565
  export declare const assetV2ApiControllerExportAssets: <ThrowOnError extends boolean = false>(options?: Options<AssetV2ApiControllerExportAssetsData, ThrowOnError>) => import("./client").RequestResult<AssetV2ApiControllerExportAssetsResponses, AssetV2ApiControllerExportAssetsErrors, ThrowOnError>;
551
566
  /**
552
567
  * List assets
553
- * List Binalyze AIR assets with explicit filters, organization scope, pagination, sorting, or output format. Use this only when the user asks for a constrained asset list, such as offline Windows endpoints, page 2, assets with no agent, or markdown output. For subtype-only prompts like 'filter by disk image', prefer air-assets-by-subtype. If a small model sends searchTerm=diskImage here, this tool normalizes it to subtype=['diskImage']. Placeholder defaults such as organizations=all, pageNumber=1, pageSize=20, sortType without sortBy, and false booleans are ignored.
568
+ * Lists assets visible to the caller, scoped by `organizations`. Supports offset pagination, whitelisted sorting and `filter[field]` querying. Start here to discover asset ids for the single-asset endpoints.
554
569
  */
555
570
  export declare const assetV2ApiControllerFilterAssets: <ThrowOnError extends boolean = false>(options?: Options<AssetV2ApiControllerFilterAssetsData, ThrowOnError>) => import("./client").RequestResult<AssetV2ApiControllerFilterAssetsResponses, AssetV2ApiControllerFilterAssetsErrors, ThrowOnError>;
556
571
  /**
557
572
  * Delete an asset by id or name
558
- * Delete or uninstall EXACTLY ONE Binalyze AIR asset, identified by a single id or name in the path, using DELETE /api/v2/assets/{idOrName}. This is destructive. ALWAYS send dryRun=true on every call (would-delete preview); pass dryRun=false only for the final real delete after the user confirms the exact asset id and mode. Use mode='purge' for console record deletion only, 'uninstall' for agent uninstall signal, and 'purge-and-uninstall' for both. Prefer UUID; names can be ambiguous. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
573
+ * Deletes an asset. `mode` picks the blast radius (purge, uninstall, or purge-and-uninstall). Send dryRun=true first: it returns the exact effects without dispatching anything.
559
574
  */
560
575
  export declare const assetV2ApiControllerDeleteAsset: <ThrowOnError extends boolean = false>(options: Options<AssetV2ApiControllerDeleteAssetData, ThrowOnError>) => import("./client").RequestResult<AssetV2ApiControllerDeleteAssetResponses, AssetV2ApiControllerDeleteAssetErrors, ThrowOnError>;
561
576
  /**
562
577
  * Get asset by id or name
563
- * Fetch one Binalyze AIR asset by UUID or name using GET /api/v2/assets/{idOrName}. Use this when the user wants details for a specific host/asset. Prefer UUID because names can be duplicated. If the API returns AMBIGUOUS_NAME, show the candidates and retry only with the selected id. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
578
+ * Fetches one asset by UUID or by exact name. Prefer the UUID: names can collide. A name matching several assets returns 400 AMBIGUOUS_NAME with candidates in errors[0].details.matches; a near-miss name returns 404 with errors[0].details.suggestions.
564
579
  */
565
580
  export declare const assetV2ApiControllerGetAsset: <ThrowOnError extends boolean = false>(options: Options<AssetV2ApiControllerGetAssetData, ThrowOnError>) => import("./client").RequestResult<AssetV2ApiControllerGetAssetResponses, AssetV2ApiControllerGetAssetErrors, ThrowOnError>;
566
581
  /**
567
582
  * Replace asset tags
568
- * Replace the complete tag set of one Binalyze AIR asset using PATCH /api/v2/assets/{idOrName}/tags. Use this only when the user asks to set, replace, update, or clear tags. This is a full replacement, not an append operation. ALWAYS send dryRun=true on every call (would-change preview); pass dryRun=false only to apply the real tag change after the user confirms the exact asset. Prefer UUID because asset names can be ambiguous; retry by id if AMBIGUOUS_NAME is returned. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
583
+ * Replaces the complete tag set of a single asset, identified by UUID or exact name; this is a full replacement, not an append, and an empty array clears all tags. Supports `dryRun` to preview the change before applying it. Returns the updated asset.
569
584
  */
570
585
  export declare const assetV2ApiControllerReplaceTags: <ThrowOnError extends boolean = false>(options: Options<AssetV2ApiControllerReplaceTagsData, ThrowOnError>) => import("./client").RequestResult<AssetV2ApiControllerReplaceTagsResponses, AssetV2ApiControllerReplaceTagsErrors, ThrowOnError>;
571
586
  /**
572
587
  * Update asset label
573
- * Set or clear the label of one Binalyze AIR asset using PATCH /api/v2/assets/{idOrName}/label. Use this only for asset label changes, not tags. Pass a string to set the label or null to clear it. ALWAYS send dryRun=true on every call (would-change preview); pass dryRun=false only to apply the real label change after the user confirms the exact asset. Prefer UUID because asset names can be ambiguous; retry by id if AMBIGUOUS_NAME is returned. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
588
+ * Sets or clears the label of a single asset, identified by UUID or exact name. Pass a string in `label` to set the label or null to clear it. Supports `dryRun` to preview the change before applying it. Returns the updated asset.
574
589
  */
575
590
  export declare const assetV2ApiControllerUpdateLabel: <ThrowOnError extends boolean = false>(options: Options<AssetV2ApiControllerUpdateLabelData, ThrowOnError>) => import("./client").RequestResult<AssetV2ApiControllerUpdateLabelResponses, AssetV2ApiControllerUpdateLabelErrors, ThrowOnError>;
576
591
  /**
577
592
  * List the hunt task history of a single asset
578
- * List the hunt (triage) task history of EXACTLY ONE Binalyze AIR asset via GET /api/v2/assets/{idOrName}/hunt (formerly /triage). Read-only; returns a paginated envelope of the triage tasks previously run on that asset. Use this when the user asks for an asset's past/ongoing triage tasks. Prefer UUID; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
593
+ * Lists the triage (hunt) task history of a single asset, identified by UUID or exact name. Supports offset pagination, whitelisted sorting and `filter[field]` querying over status and search term. Returns a paginated envelope of the triage tasks previously run on the asset.
579
594
  */
580
595
  export declare const assetTriageV2ApiControllerFilterTriageTasks: <ThrowOnError extends boolean = false>(options: Options<AssetTriageV2ApiControllerFilterTriageTasksData, ThrowOnError>) => import("./client").RequestResult<AssetTriageV2ApiControllerFilterTriageTasksResponses, AssetTriageV2ApiControllerFilterTriageTasksErrors, ThrowOnError>;
581
596
  /**
582
597
  * Run triage rule(s) on a single asset
583
- * Run hunt (triage) rule(s) on EXACTLY ONE Binalyze AIR asset via POST /api/v2/assets/{idOrName}/hunt (formerly /triage). Use this ONLY for one specific asset; for two or more assets, a list, a group, or 'all matching', use air-assets-bulk-triage instead. WARNING: this endpoint has NO dry-run preview -- a successful call creates a REAL triage task IMMEDIATELY (or a scheduled one when `schedule` is set). Confirm the exact asset and rules with the user before calling. ruleIds accept a rule UUID OR an exact rule name (names are resolved within the asset's authorized org scope; unknown/ambiguous names become per-input errors). NEVER invent or guess a rule id/name. Omit every optional argument the user did not ask for; never fill placeholders. Only a 2xx response with a returned task id means the task was created -- treat ok=false / non-2xx / the error field as failure. Supports Idempotency-Key so a retried call replays the first response instead of creating duplicate tasks. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
598
+ * Runs one or more triage (hunt) rules on a single asset, identified by UUID or exact name. Rules are referenced by id or exact name, and an optional `schedule` defers or repeats the run, which otherwise starts immediately. Returns the created task entity with its rules and owning organizations.
584
599
  */
585
600
  export declare const assetTriageV2ApiControllerRunTriage: <ThrowOnError extends boolean = false>(options: Options<AssetTriageV2ApiControllerRunTriageData, ThrowOnError>) => import("./client").RequestResult<AssetTriageV2ApiControllerRunTriageResponses, AssetTriageV2ApiControllerRunTriageErrors, ThrowOnError>;
586
601
  /**
587
602
  * Cancel triage tasks on a single asset
588
- * Cancel triage (hunt) tasks on EXACTLY ONE Binalyze AIR asset via POST /api/v2/assets/{idOrName}/triage/cancel. Use this ONLY for one specific asset's triage tasks. For cancelling a whole hunt task across all its assets, use air-hunt-cancel instead. `tasks` is ALWAYS required: an array of parent task UUIDs, or the literal string 'all' to cancel every cancellable triage task of this asset. ALWAYS send dryRun=true on every call (would-run preview); pass dryRun=false only to send the real cancellation after the user confirms the exact asset and tasks. Prefer UUID for the asset; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
603
+ * Cancels triage (hunt) tasks on a single asset, identified by UUID or exact name. `tasks` selects the parent task ids to cancel, or the literal 'all' for every cancellable triage task of the asset; only this asset's assignments are cancelled. Returns per-task entries with cancelled and skipped assignment counts.
589
604
  */
590
605
  export declare const assetTriageV2ApiControllerCancelTriage: <ThrowOnError extends boolean = false>(options: Options<AssetTriageV2ApiControllerCancelTriageData, ThrowOnError>) => import("./client").RequestResult<AssetTriageV2ApiControllerCancelTriageResponses, AssetTriageV2ApiControllerCancelTriageErrors, ThrowOnError>;
591
606
  /**
592
607
  * Delete one asset's triage task assignment
593
- * Delete ONE asset's triage (hunt) task assignment via DELETE /api/v2/assets/{idOrName}/triage/{taskId}. DESTRUCTIVE and irreversible once executed: removes this asset's assignment of the given parent triage task, including its collected results for this asset. Other assets' assignments of the same task are NOT touched; to delete the whole task everywhere, use air-hunt-delete instead. ALWAYS send dryRun=true on every call (would-delete preview); pass dryRun=false only after the user confirms the exact asset and task. taskId must be the parent task UUID (see air-assets-triage-history). Prefer UUID for the asset; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
608
+ * Deletes a single asset's assignment of the given parent triage task, including the results collected for that asset; other assets' assignments of the same task are unaffected. Supports `dryRun` to preview the deletion before executing it. Returns the deleted (or previewed) assignment row.
594
609
  */
595
610
  export declare const assetTriageV2ApiControllerDeleteTriageAssignment: <ThrowOnError extends boolean = false>(options: Options<AssetTriageV2ApiControllerDeleteTriageAssignmentData, ThrowOnError>) => import("./client").RequestResult<AssetTriageV2ApiControllerDeleteTriageAssignmentResponses, AssetTriageV2ApiControllerDeleteTriageAssignmentErrors, ThrowOnError>;
596
611
  /**
597
612
  * Start an evidence or image acquisition on a single asset
598
- * Start an evidence or disk-image acquisition on EXACTLY ONE Binalyze AIR asset via POST /api/v2/assets/{idOrName}/acquire. WARNING: this endpoint has NO dry-run preview -- a successful call starts a REAL acquisition task IMMEDIATELY (or a scheduled one when `schedule` is set). Confirm the exact asset, type, and profile/image options with the user before calling. type='evidence' (default) REQUIRES profileIdOrName and accepts NO image-specific field. type='image' REQUIRES imageType + at least one volume, accepts NO profileIdOrName, and description/examinerName are EWF2-only. The server rejects cross-type field combinations with 400. profileIdOrName / caseIdOrName accept a UUID or an exact name resolved within the asset's org scope. NEVER invent or guess a profile/case id. Omit every optional argument the user did not ask for; never fill placeholders. Only a 2xx response with a returned task id means the task was started -- treat ok=false / non-2xx / the error field as failure. Supports Idempotency-Key so a retried call replays the first response instead of starting duplicate tasks. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
613
+ * Starts an evidence or disk-image acquisition on one asset. `type` selects the branch: 'evidence' (default) requires `profileIdOrName`; 'image' requires `imageType` and at least one volume. `caseIdOrName` attaches the task to a case. The call starts a real task immediately (or a scheduled one when `schedule` is set); the Idempotency-Key header makes retries safe. Returns the created task assignment.
599
614
  */
600
615
  export declare const assetAcquisitionV2ApiControllerAcquire: <ThrowOnError extends boolean = false>(options: Options<AssetAcquisitionV2ApiControllerAcquireData, ThrowOnError>) => import("./client").RequestResult<AssetAcquisitionV2ApiControllerAcquireResponses, AssetAcquisitionV2ApiControllerAcquireErrors, ThrowOnError>;
601
616
  /**
602
617
  * Cancel acquisition tasks on a single asset
603
- * Cancel evidence/image acquisition tasks on EXACTLY ONE Binalyze AIR asset via POST /api/v2/assets/{idOrName}/acquisition/cancel. Use this ONLY for one specific asset's acquisition tasks (started with air-assets-acquire). `tasks` is ALWAYS required: an array of parent task UUIDs, or the literal string 'all' to cancel every cancellable acquisition task of this asset. ALWAYS send dryRun=true on every call (would-run preview); pass dryRun=false only to send the real cancellation after the user confirms the exact asset and tasks. Prefer UUID for the asset; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
618
+ * Cancels evidence/image acquisition tasks on a single asset, identified by UUID or exact name. `tasks` selects the parent task ids to cancel, or the literal 'all' for every cancellable acquisition task of the asset; only this asset's assignments are cancelled. Returns an asset-level summary of the cancelled tasks.
604
619
  */
605
620
  export declare const assetAcquisitionV2ApiControllerCancelAcquisition: <ThrowOnError extends boolean = false>(options: Options<AssetAcquisitionV2ApiControllerCancelAcquisitionData, ThrowOnError>) => import("./client").RequestResult<AssetAcquisitionV2ApiControllerCancelAcquisitionResponses, AssetAcquisitionV2ApiControllerCancelAcquisitionErrors, ThrowOnError>;
606
621
  /**
607
622
  * Delete one asset's acquisition task assignment
608
- * Delete ONE asset's acquisition task assignment via DELETE /api/v2/assets/{idOrName}/acquisition/{taskId}. DESTRUCTIVE and irreversible once executed: removes this asset's assignment of the given parent acquisition task, including its collected evidence for this asset. Other assets' assignments of the same task are NOT touched. ALWAYS send dryRun=true on every call (would-delete preview); pass dryRun=false only after the user confirms the exact asset and task. taskId must be the parent task UUID (see air-assets-acquisition-history). Prefer UUID for the asset; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
623
+ * Deletes a single asset's assignment of the given parent acquisition task, including the evidence collected for that asset; other assets' assignments of the same task are unaffected. Supports `dryRun` to preview the deletion before executing it. Returns the deleted (or previewed) assignment row.
609
624
  */
610
625
  export declare const assetAcquisitionV2ApiControllerDeleteAcquisitionAssignment: <ThrowOnError extends boolean = false>(options: Options<AssetAcquisitionV2ApiControllerDeleteAcquisitionAssignmentData, ThrowOnError>) => import("./client").RequestResult<AssetAcquisitionV2ApiControllerDeleteAcquisitionAssignmentResponses, AssetAcquisitionV2ApiControllerDeleteAcquisitionAssignmentErrors, ThrowOnError>;
611
626
  /**
612
627
  * List the acquisition task history of a single asset
613
- * List the acquisition (evidence/image) task history of EXACTLY ONE Binalyze AIR asset via GET /api/v2/assets/{idOrName}/acquisition. Read-only; returns a paginated envelope of the acquisition tasks previously started on that asset. Use this when the user asks for an asset's past/ongoing acquisition tasks. Prefer UUID; names can be ambiguous across organizations. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
628
+ * Lists the acquisition (evidence/image) task history of a single asset, identified by UUID or exact name. Supports offset pagination, whitelisted sorting and `filter[field]` querying over status, type and search term. Returns a paginated envelope of the acquisition tasks previously started on the asset.
614
629
  */
615
630
  export declare const assetAcquisitionV2ApiControllerFilterAcquisitionTasks: <ThrowOnError extends boolean = false>(options: Options<AssetAcquisitionV2ApiControllerFilterAcquisitionTasksData, ThrowOnError>) => import("./client").RequestResult<AssetAcquisitionV2ApiControllerFilterAcquisitionTasksResponses, AssetAcquisitionV2ApiControllerFilterAcquisitionTasksErrors, ThrowOnError>;
616
631
  /**
617
632
  * List InterAct sessions for an asset
618
- * List the InterAct shell sessions of EXACTLY ONE Binalyze AIR asset via GET /api/v2/assets/{idOrName}/interact/sessions. Read-only; returns a paginated envelope of sessions (activityState active/idle, createdBy, task, case, messageCount, timestamps). Supports filtering by session, creator, and creation date; sortable by createdAt. Use this when the user asks for an asset's shell sessions. Prefer UUID; names can be ambiguous across organizations. Omit any filter the user did not ask for. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
633
+ * Lists the InterAct shell sessions recorded for one asset, identified by UUID or exact name. Supports offset pagination, sorting, and filtering by session, creator, and creation date range. Each entry includes the derived activity state, message count, and related task and case references.
619
634
  */
620
635
  export declare const assetInteractMessageV2ApiControllerListSessionsForAsset: <ThrowOnError extends boolean = false>(options: Options<AssetInteractMessageV2ApiControllerListSessionsForAssetData, ThrowOnError>) => import("./client").RequestResult<AssetInteractMessageV2ApiControllerListSessionsForAssetResponses, AssetInteractMessageV2ApiControllerListSessionsForAssetErrors, ThrowOnError>;
621
636
  /**
622
637
  * Get an InterAct message scoped to an asset
623
- * Fetch ONE InterAct shell message of a Binalyze AIR asset by message UUID via GET /api/v2/assets/{idOrName}/interact/{messageId}. Read-only; returns the unified message entity (command, status, output/outputUrl, exitCode, timestamps). Use this to poll a 'running' message returned by air-assets-interact-run, or to inspect one specific message. The message must belong to the asset, otherwise the API returns 404. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
638
+ * Fetches one InterAct shell message of an asset by message UUID. Returns the unified message entity with the command, status, exit code, timestamps, and the output inline or via outputUrl. The message must belong to the asset, otherwise the API returns 404.
624
639
  */
625
640
  export declare const assetInteractMessageV2ApiControllerGetMessage: <ThrowOnError extends boolean = false>(options: Options<AssetInteractMessageV2ApiControllerGetMessageData, ThrowOnError>) => import("./client").RequestResult<AssetInteractMessageV2ApiControllerGetMessageResponses, AssetInteractMessageV2ApiControllerGetMessageErrors, ThrowOnError>;
626
641
  /**
627
642
  * Download an InterAct message output
628
- * Download the output of ONE InterAct shell message of a Binalyze AIR asset via GET /api/v2/assets/{idOrName}/interact/{messageId}/download. Read-only; the endpoint streams the message output as an attachment (it bypasses the JSON envelope). This tool saves the bytes to a file inside the current worktree (outputPath, default artifacts/interact-message-output.bin) and returns { outputPath, byteLength }; read the saved file for the content. Use this for a message whose output is too large to inline (outputUrl is set). The message must be terminal -- a still-running message returns 400. On HTTP 404 the asset name or message id was not found; verify the asset with air-assets-get and the message with air-assets-interact-messages before retrying.
643
+ * Streams the stored output of one completed InterAct shell message as a binary attachment, bypassing the JSON envelope. Intended for output too large to inline (outputUrl is set on the message). A still-running message returns 400.
629
644
  */
630
645
  export declare const assetInteractMessageV2ApiControllerDownloadMessageOutput: <ThrowOnError extends boolean = false>(options: Options<AssetInteractMessageV2ApiControllerDownloadMessageOutputData, ThrowOnError>) => import("./client").RequestResult<AssetInteractMessageV2ApiControllerDownloadMessageOutputResponses, AssetInteractMessageV2ApiControllerDownloadMessageOutputErrors, ThrowOnError>;
631
646
  /**
632
647
  * Get an InterAct session report scoped to an asset
633
- * Get the InterAct shell session report of a Binalyze AIR asset via GET /api/v2/assets/{idOrName}/interact/sessions/{sessionId}/report. Read-only; returns a self-contained session report. format='json' (default) returns the structured report envelope (session, asset, messages, messageCount, lastActivityAt); format='html' returns the rendered HTML report (this tool returns a preview of the HTML plus its byte length). Use a sessionId from air-assets-interact-sessions. The session must belong to the asset, otherwise the API returns 404. Prefer UUID for the asset. On HTTP 404 with errors[0].details.suggestions, the asset name was not found -- show those suggestions to the user and confirm before retrying, never guess; on HTTP 400 AMBIGUOUS_NAME with errors[0].details.matches, ask which asset by id.
648
+ * Builds a self-contained report for one InterAct shell session of an asset. The default JSON format returns the session, the asset identity, and all messages; format=html returns the rendered HTML report instead. The session must belong to the asset, otherwise the API returns 404.
634
649
  */
635
650
  export declare const assetInteractMessageV2ApiControllerGetSessionReport: <ThrowOnError extends boolean = false>(options: Options<AssetInteractMessageV2ApiControllerGetSessionReportData, ThrowOnError>) => import("./client").RequestResult<AssetInteractMessageV2ApiControllerGetSessionReportResponses, AssetInteractMessageV2ApiControllerGetSessionReportErrors, ThrowOnError>;
636
651
  /**
637
652
  * List cloud acquisition profiles
638
- * List Binalyze AIR cloud (M365) acquisition profiles via GET /api/v2/libraries/acquisition/cloud. Read-only and paginated. Each entity is a profile summary: id, name, organizations[{id,name}], averageTime, createdAt/createdBy, lastUsedAt/lastUsedBy, deletable, and a detailsUrl. The m365UserBased/m365TenantWide evidence lists are NOT included; use air-acquisition-cloud-get for one profile's full config. Use this when the user asks to list or search cloud acquisition profiles, or needs a profile id or exact name before get, update, delete, or bulk delete. sortBy accepts only name, createdBy, createdAt, lastUsedAt, lastUsedBy (default createdAt). Profiles with an empty organizations array are global.
653
+ * Lists cloud (M365) acquisition profiles as paginated summary rows scoped by `organizations`, with `filter[field]` querying and sorting by name, createdBy, createdAt, lastUsedAt or lastUsedBy. Each row carries id, name, organizations, usage metadata and a detailsUrl; the M365 evidence selections are returned by the single-profile endpoint.
639
654
  */
640
655
  export declare const cloudAcquisitionLibraryApiControllerList: <ThrowOnError extends boolean = false>(options?: Options<CloudAcquisitionLibraryApiControllerListData, ThrowOnError>) => import("./client").RequestResult<CloudAcquisitionLibraryApiControllerListResponses, CloudAcquisitionLibraryApiControllerListErrors, ThrowOnError>;
641
656
  /**
642
657
  * Create cloud acquisition profile
643
- * Create a Binalyze AIR cloud (M365) acquisition profile via POST /api/v2/libraries/acquisition/cloud. MUTATING: persists a new profile. Returns 200 with entities[0] = the created profile detail. `name` (alphanumeric) plus BOTH m365UserBased and m365TenantWide blocks are required; each block is {evidenceList: string[]} and at least one evidence must be selected across the two blocks. Body `organizationIds` controls which organizations own the profile; common query `organizations`, `orgs`, and `org` parameters are rejected. Evidence keys are lowercase M365 collector names, e.g. user-based: outlookmails, onedrive, teams, teamschat, calendar, mfa, user; tenant-wide: ual, adminauditlog, azureadaccountlogon, sharepoint, exchangeadmin, riskyusers. dryRun DEFAULTS TO TRUE: the first call validates and returns the would-be entity without persisting anything; pass dryRun=false only to actually create after the user confirms. Inspect an existing profile with air-acquisition-cloud-get for the full list of valid evidence keys.
658
+ * Creates a cloud (M365) acquisition profile from a required `name` plus the m365UserBased and m365TenantWide evidence blocks, with at least one evidence selected across the two. Body `organizationIds` controls which organizations own the profile. With dryRun=true (the default) the request is only validated and the would-be profile is returned without persisting; a real create returns the profile detail in entities[0].
644
659
  */
645
660
  export declare const cloudAcquisitionLibraryApiControllerCreate: <ThrowOnError extends boolean = false>(options: Options<CloudAcquisitionLibraryApiControllerCreateData, ThrowOnError>) => import("./client").RequestResult<CloudAcquisitionLibraryApiControllerCreateResponses, CloudAcquisitionLibraryApiControllerCreateErrors, ThrowOnError>;
646
661
  /**
647
662
  * Bulk delete cloud acquisition profiles
648
- * Bulk delete Binalyze AIR cloud (M365) acquisition profiles via POST /api/v2/libraries/acquisition/cloud/delete. MUTATING and irreversible. Resolution is tolerant: unknown or ambiguous items are skipped and reported in warnings[] (action: 'skipped') instead of failing the whole request. System profiles are also skipped with a warning. dryRun DEFAULTS TO TRUE: the first call returns entities[] of what would be deleted; pass dryRun=false only to actually delete after the user confirms. A real delete returns deletedCount plus warnings[]. Use this for several profiles at once; use air-acquisition-cloud-delete for exactly one. Ids and exact names come from air-acquisition-cloud-list.
663
+ * Deletes several cloud (M365) acquisition profiles in one request, resolving each item by UUID or exact name. Unknown, ambiguous or system profiles are skipped and reported in warnings[] instead of failing the batch. With dryRun=true (the default) the response previews what would be deleted; a real delete returns deletedCount plus warnings[].
649
664
  */
650
665
  export declare const cloudAcquisitionLibraryApiControllerBulkDelete: <ThrowOnError extends boolean = false>(options: Options<CloudAcquisitionLibraryApiControllerBulkDeleteData, ThrowOnError>) => import("./client").RequestResult<CloudAcquisitionLibraryApiControllerBulkDeleteResponses, CloudAcquisitionLibraryApiControllerBulkDeleteErrors, ThrowOnError>;
651
666
  /**
652
667
  * Delete cloud acquisition profile
653
- * Delete ONE Binalyze AIR cloud (M365) acquisition profile via DELETE /api/v2/libraries/acquisition/cloud/{idOrName}. MUTATING and irreversible. System (predefined) profiles cannot be deleted: the API returns 406 SYSTEM_PROFILE_IMMUTABLE. dryRun DEFAULTS TO TRUE: the first call returns what would be deleted without removing anything; pass dryRun=false only to actually delete after the user confirms. Use air-acquisition-cloud-bulk-delete for several profiles at once. The idOrName comes from air-acquisition-cloud-list or air-acquisition-cloud-get. An unknown idOrName returns 404 NOT_FOUND with suggestions; an ambiguous name returns 400 AMBIGUOUS_NAME.
668
+ * Deletes one cloud (M365) acquisition profile by UUID or exact name. System profiles cannot be deleted (406 SYSTEM_PROFILE_IMMUTABLE). With dryRun=true (the default) the response shows what would be deleted without removing anything.
654
669
  */
655
670
  export declare const cloudAcquisitionLibraryApiControllerDelete: <ThrowOnError extends boolean = false>(options: Options<CloudAcquisitionLibraryApiControllerDeleteData, ThrowOnError>) => import("./client").RequestResult<CloudAcquisitionLibraryApiControllerDeleteResponses, CloudAcquisitionLibraryApiControllerDeleteErrors, ThrowOnError>;
656
671
  /**
657
672
  * Get cloud acquisition profile by id or name
658
- * Get ONE Binalyze AIR cloud (M365) acquisition profile by UUID or exact name via GET /api/v2/libraries/acquisition/cloud/{idOrName}. Read-only. Returns the full profile detail in entities[0]: id, name, organizations[{id,name}], m365UserBased.evidenceList, m365TenantWide.evidenceList, deletable, and timestamps. Use this when the user asks to show or inspect a cloud acquisition profile's evidence selection, to clone one, or to discover valid M365 evidence keys. Ids and exact names come from air-acquisition-cloud-list. An unknown idOrName returns 404 NOT_FOUND with did-you-mean suggestions in errors[0].details.suggestions[]; an ambiguous name returns 400 AMBIGUOUS_NAME with candidates in errors[0].details.matches[].
673
+ * Fetches one cloud (M365) acquisition profile by UUID or exact name, returning the full detail in entities[0]: the m365UserBased and m365TenantWide evidence lists, organizations and timestamps. A name matching several profiles returns 400 AMBIGUOUS_NAME with candidates; an unknown identifier returns 404 with suggestions.
659
674
  */
660
675
  export declare const cloudAcquisitionLibraryApiControllerGet: <ThrowOnError extends boolean = false>(options: Options<CloudAcquisitionLibraryApiControllerGetData, ThrowOnError>) => import("./client").RequestResult<CloudAcquisitionLibraryApiControllerGetResponses, CloudAcquisitionLibraryApiControllerGetErrors, ThrowOnError>;
661
676
  /**
662
677
  * Update cloud acquisition profile
663
- * Update ONE Binalyze AIR cloud (M365) acquisition profile via PATCH /api/v2/libraries/acquisition/cloud/{idOrName}. MUTATING partial update: only the fields you pass change; omitted fields keep their current value. Updatable fields: name, organizationIds, m365UserBased, m365TenantWide. A passed evidence block REPLACES that whole block. The merged profile must keep at least one M365 evidence selected across the two blocks (a name-only patch is fine). Sending no updatable field returns NOTHING_CHANGED with result null. System (predefined) profiles cannot be updated: the API returns 406 SYSTEM_PROFILE_IMMUTABLE. dryRun DEFAULTS TO TRUE: the first call previews the merged profile without persisting; pass dryRun=false only to actually update after the user confirms. The idOrName comes from air-acquisition-cloud-list or air-acquisition-cloud-get. An unknown idOrName returns 404 NOT_FOUND with suggestions; an ambiguous name returns 400 AMBIGUOUS_NAME.
678
+ * Partially updates one cloud (M365) acquisition profile: only the provided fields (name, organizationIds, m365UserBased, m365TenantWide) change, and a passed evidence block replaces that whole block. The merged profile must keep at least one M365 evidence selected, and system profiles cannot be updated. With dryRun=true (the default) the merged profile is previewed without persisting.
664
679
  */
665
680
  export declare const cloudAcquisitionLibraryApiControllerUpdate: <ThrowOnError extends boolean = false>(options: Options<CloudAcquisitionLibraryApiControllerUpdateData, ThrowOnError>) => import("./client").RequestResult<CloudAcquisitionLibraryApiControllerUpdateResponses, CloudAcquisitionLibraryApiControllerUpdateErrors, ThrowOnError>;
666
681
  /**
667
682
  * List disk image acquisition profiles
668
- * List Binalyze AIR disk-image acquisition profiles via GET /api/v2/libraries/acquisition/disk-image. Read-only and paginated. Requires the image-evidence-acquisition feature to be enabled on the Console. Each entity is a profile summary: id, name, organizations[{id,name}], averageTime, createdAt/updatedAt, createdBy, lastUsedAt/lastUsedBy, deletable, and a detailsUrl. allFiles/paths/evidence config is NOT included; use air-acquisition-disk-image-get for one profile's full config. Use this when the user asks to list or search disk-image (forensic imaging) profiles, or needs a profile id or exact name before get, update, delete, or bulk delete. sortBy accepts only name, createdAt, updatedAt, lastUsedAt, createdBy, lastUsedBy (default createdAt). Profiles with an empty organizations array are global.
683
+ * Lists disk image acquisition profiles as paginated summary rows scoped by `organizations`, with `filter[field]` querying and sorting by name, createdAt, updatedAt, lastUsedAt, createdBy or lastUsedBy. Each row carries id, name, organizations, usage metadata and a detailsUrl; the allFiles/paths/evidence configuration is returned by the single-profile endpoint.
669
684
  */
670
685
  export declare const diskImageAcquisitionLibraryApiControllerList: <ThrowOnError extends boolean = false>(options?: Options<DiskImageAcquisitionLibraryApiControllerListData, ThrowOnError>) => import("./client").RequestResult<DiskImageAcquisitionLibraryApiControllerListResponses, DiskImageAcquisitionLibraryApiControllerListErrors, ThrowOnError>;
671
686
  /**
672
687
  * Create disk image acquisition profile
673
- * Create a Binalyze AIR disk-image acquisition profile via POST /api/v2/libraries/acquisition/disk-image. MUTATING: persists a new profile. Returns 200 with entities[0] = the created profile detail. Requires the image-evidence-acquisition feature to be enabled on the Console. `name` is required (alphanumeric). Scope is either allFiles=true (full image) OR a `paths` list of directories/files to image; the allFiles/paths combination must be consistent (a profile cannot have both allFiles=true and paths). `imageAcquisitionEvidences` optionally selects extra evidence to collect alongside the image. Body `organizationIds` controls which organizations own the profile; common query `organizations`, `orgs`, and `org` parameters are rejected. dryRun DEFAULTS TO TRUE: the first call validates and returns the would-be entity without persisting anything; pass dryRun=false only to actually create after the user confirms. Inspect an existing profile with air-acquisition-disk-image-get when cloning or when unsure of valid evidence keys.
688
+ * Creates a disk image acquisition profile from a required `name` plus an imaging scope: either allFiles=true for a full-disk image or a `paths` list of directories and files, optionally with extra `imageAcquisitionEvidences` collected alongside the image. Body `organizationIds` controls which organizations own the profile. With dryRun=true (the default) the request is only validated and the would-be profile is returned without persisting; a real create returns the profile detail in entities[0].
674
689
  */
675
690
  export declare const diskImageAcquisitionLibraryApiControllerCreate: <ThrowOnError extends boolean = false>(options: Options<DiskImageAcquisitionLibraryApiControllerCreateData, ThrowOnError>) => import("./client").RequestResult<DiskImageAcquisitionLibraryApiControllerCreateResponses, DiskImageAcquisitionLibraryApiControllerCreateErrors, ThrowOnError>;
676
691
  /**
677
692
  * Bulk delete disk image acquisition profiles
678
- * Bulk delete Binalyze AIR disk-image acquisition profiles via POST /api/v2/libraries/acquisition/disk-image/delete. MUTATING and irreversible. Requires the image-evidence-acquisition feature to be enabled on the Console. Resolution is tolerant: unknown or ambiguous items are skipped and reported in warnings[] (action: 'skipped') instead of failing the whole request. System profiles are also skipped with a warning. dryRun DEFAULTS TO TRUE: the first call returns entities[] of what would be deleted; pass dryRun=false only to actually delete after the user confirms. A real delete returns deletedCount plus warnings[]. Use this for several profiles at once; use air-acquisition-disk-image-delete for exactly one. Ids and exact names come from air-acquisition-disk-image-list.
693
+ * Deletes several disk image acquisition profiles in one request, resolving each item by UUID or exact name. Unknown, ambiguous or system profiles are skipped and reported in warnings[] instead of failing the batch. With dryRun=true (the default) the response previews what would be deleted; a real delete returns deletedCount plus warnings[].
679
694
  */
680
695
  export declare const diskImageAcquisitionLibraryApiControllerBulkDelete: <ThrowOnError extends boolean = false>(options: Options<DiskImageAcquisitionLibraryApiControllerBulkDeleteData, ThrowOnError>) => import("./client").RequestResult<DiskImageAcquisitionLibraryApiControllerBulkDeleteResponses, DiskImageAcquisitionLibraryApiControllerBulkDeleteErrors, ThrowOnError>;
681
696
  /**
682
697
  * Delete disk image acquisition profile
683
- * Delete ONE Binalyze AIR disk-image acquisition profile via DELETE /api/v2/libraries/acquisition/disk-image/{idOrName}. MUTATING and irreversible. Requires the image-evidence-acquisition feature to be enabled on the Console. System (predefined) profiles cannot be deleted: the API returns 406 SYSTEM_PROFILE_IMMUTABLE. dryRun DEFAULTS TO TRUE: the first call returns what would be deleted without removing anything; pass dryRun=false only to actually delete after the user confirms. Use air-acquisition-disk-image-bulk-delete for several profiles at once. The idOrName comes from air-acquisition-disk-image-list or air-acquisition-disk-image-get. An unknown idOrName returns 404 NOT_FOUND with suggestions; an ambiguous name returns 400 AMBIGUOUS_NAME.
698
+ * Deletes one disk image acquisition profile by UUID or exact name. System profiles cannot be deleted (406 SYSTEM_PROFILE_IMMUTABLE). With dryRun=true (the default) the response shows what would be deleted without removing anything.
684
699
  */
685
700
  export declare const diskImageAcquisitionLibraryApiControllerDelete: <ThrowOnError extends boolean = false>(options: Options<DiskImageAcquisitionLibraryApiControllerDeleteData, ThrowOnError>) => import("./client").RequestResult<DiskImageAcquisitionLibraryApiControllerDeleteResponses, DiskImageAcquisitionLibraryApiControllerDeleteErrors, ThrowOnError>;
686
701
  /**
687
702
  * Get disk image acquisition profile by id or name
688
- * Get ONE Binalyze AIR disk-image acquisition profile by UUID or exact name via GET /api/v2/libraries/acquisition/disk-image/{idOrName}. Read-only. Requires the image-evidence-acquisition feature to be enabled on the Console. Returns the full profile detail in entities[0]: id, name, organizations[{id,name}], allFiles, paths[] ({path, description}), imageAcquisitionEvidences, deletable, and timestamps. Use this when the user asks to show or inspect a disk-image profile's scope, or to clone one. Ids and exact names come from air-acquisition-disk-image-list. An unknown idOrName returns 404 NOT_FOUND with did-you-mean suggestions in errors[0].details.suggestions[]; an ambiguous name returns 400 AMBIGUOUS_NAME with candidates in errors[0].details.matches[].
703
+ * Fetches one disk image acquisition profile by UUID or exact name, returning the full detail in entities[0]: the allFiles/paths imaging scope, extra evidence selection, organizations and timestamps. A name matching several profiles returns 400 AMBIGUOUS_NAME with candidates; an unknown identifier returns 404 with suggestions.
689
704
  */
690
705
  export declare const diskImageAcquisitionLibraryApiControllerGet: <ThrowOnError extends boolean = false>(options: Options<DiskImageAcquisitionLibraryApiControllerGetData, ThrowOnError>) => import("./client").RequestResult<DiskImageAcquisitionLibraryApiControllerGetResponses, DiskImageAcquisitionLibraryApiControllerGetErrors, ThrowOnError>;
691
706
  /**
692
707
  * Update disk image acquisition profile
693
- * Update ONE Binalyze AIR disk-image acquisition profile via PATCH /api/v2/libraries/acquisition/disk-image/{idOrName}. MUTATING partial update: only the fields you pass change; omitted fields keep their current value. Requires the image-evidence-acquisition feature. Updatable fields: name, organizationIds, allFiles, paths, imageAcquisitionEvidences. The merged profile must stay consistent: allFiles=true cannot coexist with a non-empty paths list. Sending no updatable field returns NOTHING_CHANGED with result null. System (predefined) profiles cannot be updated: the API returns 406 SYSTEM_PROFILE_IMMUTABLE. dryRun DEFAULTS TO TRUE: the first call previews the merged profile without persisting; pass dryRun=false only to actually update after the user confirms. The idOrName comes from air-acquisition-disk-image-list or air-acquisition-disk-image-get. An unknown idOrName returns 404 NOT_FOUND with suggestions; an ambiguous name returns 400 AMBIGUOUS_NAME.
708
+ * Partially updates one disk image acquisition profile: only the provided fields (name, organizationIds, allFiles, paths, imageAcquisitionEvidences) change. The merged profile must keep a consistent scope (allFiles=true cannot coexist with a non-empty paths list), and system profiles cannot be updated. With dryRun=true (the default) the merged profile is previewed without persisting.
694
709
  */
695
710
  export declare const diskImageAcquisitionLibraryApiControllerUpdate: <ThrowOnError extends boolean = false>(options: Options<DiskImageAcquisitionLibraryApiControllerUpdateData, ThrowOnError>) => import("./client").RequestResult<DiskImageAcquisitionLibraryApiControllerUpdateResponses, DiskImageAcquisitionLibraryApiControllerUpdateErrors, ThrowOnError>;