# coding: utf-8

# flake8: noqa

"""
    Whisper Security API

    # Whisper Security Threat Intelligence API  The Whisper Security API provides comprehensive threat intelligence, geolocation data, and security operations capabilities for enterprise security teams and developers.  ## Key Capabilities  - **Indicator Enrichment**: Get comprehensive intelligence on IP addresses and domains including   geolocation, WHOIS, DNS, reputation scoring, and relationship mapping. - **Geolocation Services**: Fast IP-to-location lookups with ISP, ASN, and network information. - **Security Operations**: Asynchronous tools for bulk enrichment, infrastructure scanning,   AI-powered threat investigation, and monitoring.  ## API Design  - **RESTful**: Standard HTTP methods (GET, POST, PUT, DELETE) with JSON request/response bodies. - **Synchronous Endpoints**: Fast responses (<500ms) for indicator enrichment and geolocation. - **Asynchronous Jobs**: Long-running operations return a job ID for polling results. - **Consistent Error Handling**: Standardized error responses with status codes, error codes, and messages.  ## Authentication  All API endpoints require Bearer token authentication. Include your API key in the `Authorization` header: `Authorization: Bearer <your-api-key>`  ## Rate Limits  Rate limits are applied per-user and vary by endpoint category:  | Endpoint Category | Rate Limit | Description | |-------------------|------------|-------------| | Indicators (`/v1/indicators/*`) | 100 req/sec | Single indicator enrichment | | Location (`/v1/location/*`) | 100 req/sec | Geolocation lookups | | Jobs (`/v1/ops/jobs/*`) | 100 req/sec | Job status and listing | | Bulk Operations (`/v1/ops/enrichment/bulk`) | 10 req/sec | Bulk indicator processing | | Screenshots (`/v1/ops/screenshots/*`) | 10 req/sec | Screenshot capture and scheduling | | Scans (`/v1/ops/scans/*`) | 10 req/sec | Infrastructure scanning | | Monitoring (`/v1/ops/monitoring/*`) | 10 req/sec | Uptime monitoring | | Tracking (`/v1/ops/tracking/*`) | 10 req/sec | Change tracking | | AI Investigate (`/v1/ops/ai/investigate`) | 5 req/min | Deep threat investigation | | AI Correlate (`/v1/ops/ai/correlate`) | 5 req/min | Global correlation | | AI Attribute (`/v1/ops/ai/attribute`) | 5 req/min | Threat actor attribution | | AI Pivot (`/v1/ops/ai/pivot`) | 5 req/min | Infrastructure pivoting |  When rate limits are exceeded, the API returns HTTP `429 Too Many Requests` with a `Retry-After` header indicating when you can retry. The response body includes: ```json {   \"error\": \"Too Many Requests\",   \"message\": \"Rate limit exceeded for <category>. Please retry after N seconds.\",   \"retryAfter\": N } ```  ## Response Conventions  - All timestamps are in ISO 8601 format (UTC). - Pagination uses `limit` and `offset` parameters. - Field names use camelCase throughout the API.  ## Official SDKs  - **Python**: [github.com/whisper-sec/sdk-python](https://github.com/whisper-sec/sdk-python) - **TypeScript/JavaScript**: [github.com/whisper-sec/sdk-typescript](https://github.com/whisper-sec/sdk-typescript) - **Java**: [github.com/whisper-sec/sdk-java](https://github.com/whisper-sec/sdk-java) - **C#/.NET**: [github.com/whisper-sec/sdk-csharp](https://github.com/whisper-sec/sdk-csharp)  ## Resources  - **Website**: [whisper.security](https://whisper.security) - **Dashboard**: [dash.whisper.security](https://dash.whisper.security) - Manage API keys and view usage - **Documentation**: [docs.whisper.security](https://docs.whisper.security) - Guides and tutorials 

    The version of the OpenAPI document: 1.0.0
    Contact: support@whisper.security
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
"""  # noqa: E501


__version__ = "1.0.0"

# Define package exports
__all__ = [
    "AIIntelligenceApi",
    "ChangeTrackingApi",
    "EnrichmentApi",
    "GraphDatabaseApi",
    "InfrastructureScanningApi",
    "JobsApi",
    "LocationApi",
    "MonitoringApi",
    "ScreenshotsApi",
    "ApiResponse",
    "ApiClient",
    "Configuration",
    "OpenApiException",
    "ApiTypeError",
    "ApiValueError",
    "ApiKeyError",
    "ApiAttributeError",
    "ApiException",
    "AnalysisMetadata",
    "AttributeRequest",
    "AttributeResult",
    "AttributionContext",
    "BenchmarkInfo",
    "BenchmarkMetrics",
    "BenchmarkResponse",
    "BlacklistScores",
    "BulkEnrichmentResult",
    "BulkIpLocationRequest",
    "BulkOptions",
    "BulkRequest",
    "ChangeEvent",
    "ChangeTrackingRequest",
    "ChangeTrackingResponse",
    "CityInfo",
    "CoordinatesInfo",
    "CorrelateOptions",
    "CorrelateRequest",
    "CorrelateResult",
    "CountryInfo",
    "CurrentAssessment",
    "CypherQueryRequest",
    "CypherQueryResponse",
    "CypherSchemaResponse",
    "DnsInfo",
    "DomainItem",
    "DomainReputationDetails",
    "DomainReputationScores",
    "EarlyWarning",
    "ErrorInfo",
    "ErrorResponse",
    "GenericSuccessResponse",
    "GraphLink",
    "GraphNode",
    "GraphQLRequest",
    "GraphResponse",
    "HistoryData",
    "HistoryResponse",
    "IndicatorResponse",
    "IndustryInfo",
    "InfrastructureMapRequest",
    "InvestigateContext",
    "InvestigateRequest",
    "InvestigateResult",
    "IpGeolocationResponse",
    "IspInfo",
    "Job",
    "JobError",
    "JobListResponse",
    "JobProgress",
    "JobResponse",
    "JobSummary",
    "LinksInfo",
    "LocationInfo",
    "MetadataInfo",
    "ModelInfo",
    "MonitorAssertions",
    "MonitorCheckRequest",
    "MonitorCheckResponse",
    "MonitorDashboardResponse",
    "MonitorListResponse",
    "MonitorResultListResponse",
    "MonitorResultResponse",
    "MonitoringAlertRequest",
    "MonitoringMetrics",
    "MonitoringStatusResponse",
    "PatternMatching",
    "PercentileInfo",
    "PivotRequest",
    "PivotResult",
    "PredictionPoint",
    "Predictions",
    "PredictiveRiskResponse",
    "ProgressInfo",
    "QueryInfo",
    "RateLimitError",
    "RelationshipInfo",
    "ReputationInfo",
    "RiskFactor",
    "ScanRequest",
    "ScheduleConfig",
    "ScheduleWithScreenshots",
    "ScreenshotEntry",
    "ScreenshotHistoryResponse",
    "ScreenshotOptions",
    "ScreenshotRequest",
    "ScreenshotSchedule",
    "ScreenshotScheduleListResponse",
    "SearchRequest",
    "SearchResponse",
    "SimilarCase",
    "SimilarCasesRequest",
    "SimilarCasesResult",
    "SimilarDomainEntry",
    "SimilarDomainsOpsRequest",
    "SimilarDomainsResponse",
    "SubdomainInfo",
    "SubdomainResponse",
    "SummaryInfo",
    "ThreatProfile",
    "TrackedIndicator",
    "TrackedIndicatorsResponse",
    "TrackingConfig",
    "TraitsInfo",
    "TrajectoryInfo",
    "TrendData",
]

# import apis into sdk package
from whisper_api_sdk.api.ai_intelligence_api import AIIntelligenceApi as AIIntelligenceApi
from whisper_api_sdk.api.change_tracking_api import ChangeTrackingApi as ChangeTrackingApi
from whisper_api_sdk.api.enrichment_api import EnrichmentApi as EnrichmentApi
from whisper_api_sdk.api.graph_database_api import GraphDatabaseApi as GraphDatabaseApi
from whisper_api_sdk.api.infrastructure_scanning_api import InfrastructureScanningApi as InfrastructureScanningApi
from whisper_api_sdk.api.jobs_api import JobsApi as JobsApi
from whisper_api_sdk.api.location_api import LocationApi as LocationApi
from whisper_api_sdk.api.monitoring_api import MonitoringApi as MonitoringApi
from whisper_api_sdk.api.screenshots_api import ScreenshotsApi as ScreenshotsApi

# import ApiClient
from whisper_api_sdk.api_response import ApiResponse as ApiResponse
from whisper_api_sdk.api_client import ApiClient as ApiClient
from whisper_api_sdk.configuration import Configuration as Configuration
from whisper_api_sdk.exceptions import OpenApiException as OpenApiException
from whisper_api_sdk.exceptions import ApiTypeError as ApiTypeError
from whisper_api_sdk.exceptions import ApiValueError as ApiValueError
from whisper_api_sdk.exceptions import ApiKeyError as ApiKeyError
from whisper_api_sdk.exceptions import ApiAttributeError as ApiAttributeError
from whisper_api_sdk.exceptions import ApiException as ApiException

# import models into sdk package
from whisper_api_sdk.models.analysis_metadata import AnalysisMetadata as AnalysisMetadata
from whisper_api_sdk.models.attribute_request import AttributeRequest as AttributeRequest
from whisper_api_sdk.models.attribute_result import AttributeResult as AttributeResult
from whisper_api_sdk.models.attribution_context import AttributionContext as AttributionContext
from whisper_api_sdk.models.benchmark_info import BenchmarkInfo as BenchmarkInfo
from whisper_api_sdk.models.benchmark_metrics import BenchmarkMetrics as BenchmarkMetrics
from whisper_api_sdk.models.benchmark_response import BenchmarkResponse as BenchmarkResponse
from whisper_api_sdk.models.blacklist_scores import BlacklistScores as BlacklistScores
from whisper_api_sdk.models.bulk_enrichment_result import BulkEnrichmentResult as BulkEnrichmentResult
from whisper_api_sdk.models.bulk_ip_location_request import BulkIpLocationRequest as BulkIpLocationRequest
from whisper_api_sdk.models.bulk_options import BulkOptions as BulkOptions
from whisper_api_sdk.models.bulk_request import BulkRequest as BulkRequest
from whisper_api_sdk.models.change_event import ChangeEvent as ChangeEvent
from whisper_api_sdk.models.change_tracking_request import ChangeTrackingRequest as ChangeTrackingRequest
from whisper_api_sdk.models.change_tracking_response import ChangeTrackingResponse as ChangeTrackingResponse
from whisper_api_sdk.models.city_info import CityInfo as CityInfo
from whisper_api_sdk.models.coordinates_info import CoordinatesInfo as CoordinatesInfo
from whisper_api_sdk.models.correlate_options import CorrelateOptions as CorrelateOptions
from whisper_api_sdk.models.correlate_request import CorrelateRequest as CorrelateRequest
from whisper_api_sdk.models.correlate_result import CorrelateResult as CorrelateResult
from whisper_api_sdk.models.country_info import CountryInfo as CountryInfo
from whisper_api_sdk.models.current_assessment import CurrentAssessment as CurrentAssessment
from whisper_api_sdk.models.cypher_query_request import CypherQueryRequest as CypherQueryRequest
from whisper_api_sdk.models.cypher_query_response import CypherQueryResponse as CypherQueryResponse
from whisper_api_sdk.models.cypher_schema_response import CypherSchemaResponse as CypherSchemaResponse
from whisper_api_sdk.models.dns_info import DnsInfo as DnsInfo
from whisper_api_sdk.models.domain_item import DomainItem as DomainItem
from whisper_api_sdk.models.domain_reputation_details import DomainReputationDetails as DomainReputationDetails
from whisper_api_sdk.models.domain_reputation_scores import DomainReputationScores as DomainReputationScores
from whisper_api_sdk.models.early_warning import EarlyWarning as EarlyWarning
from whisper_api_sdk.models.error_info import ErrorInfo as ErrorInfo
from whisper_api_sdk.models.error_response import ErrorResponse as ErrorResponse
from whisper_api_sdk.models.generic_success_response import GenericSuccessResponse as GenericSuccessResponse
from whisper_api_sdk.models.graph_link import GraphLink as GraphLink
from whisper_api_sdk.models.graph_node import GraphNode as GraphNode
from whisper_api_sdk.models.graph_ql_request import GraphQLRequest as GraphQLRequest
from whisper_api_sdk.models.graph_response import GraphResponse as GraphResponse
from whisper_api_sdk.models.history_data import HistoryData as HistoryData
from whisper_api_sdk.models.history_response import HistoryResponse as HistoryResponse
from whisper_api_sdk.models.indicator_response import IndicatorResponse as IndicatorResponse
from whisper_api_sdk.models.industry_info import IndustryInfo as IndustryInfo
from whisper_api_sdk.models.infrastructure_map_request import InfrastructureMapRequest as InfrastructureMapRequest
from whisper_api_sdk.models.investigate_context import InvestigateContext as InvestigateContext
from whisper_api_sdk.models.investigate_request import InvestigateRequest as InvestigateRequest
from whisper_api_sdk.models.investigate_result import InvestigateResult as InvestigateResult
from whisper_api_sdk.models.ip_geolocation_response import IpGeolocationResponse as IpGeolocationResponse
from whisper_api_sdk.models.isp_info import IspInfo as IspInfo
from whisper_api_sdk.models.job import Job as Job
from whisper_api_sdk.models.job_error import JobError as JobError
from whisper_api_sdk.models.job_list_response import JobListResponse as JobListResponse
from whisper_api_sdk.models.job_progress import JobProgress as JobProgress
from whisper_api_sdk.models.job_response import JobResponse as JobResponse
from whisper_api_sdk.models.job_summary import JobSummary as JobSummary
from whisper_api_sdk.models.links_info import LinksInfo as LinksInfo
from whisper_api_sdk.models.location_info import LocationInfo as LocationInfo
from whisper_api_sdk.models.metadata_info import MetadataInfo as MetadataInfo
from whisper_api_sdk.models.model_info import ModelInfo as ModelInfo
from whisper_api_sdk.models.monitor_assertions import MonitorAssertions as MonitorAssertions
from whisper_api_sdk.models.monitor_check_request import MonitorCheckRequest as MonitorCheckRequest
from whisper_api_sdk.models.monitor_check_response import MonitorCheckResponse as MonitorCheckResponse
from whisper_api_sdk.models.monitor_dashboard_response import MonitorDashboardResponse as MonitorDashboardResponse
from whisper_api_sdk.models.monitor_list_response import MonitorListResponse as MonitorListResponse
from whisper_api_sdk.models.monitor_result_list_response import MonitorResultListResponse as MonitorResultListResponse
from whisper_api_sdk.models.monitor_result_response import MonitorResultResponse as MonitorResultResponse
from whisper_api_sdk.models.monitoring_alert_request import MonitoringAlertRequest as MonitoringAlertRequest
from whisper_api_sdk.models.monitoring_metrics import MonitoringMetrics as MonitoringMetrics
from whisper_api_sdk.models.monitoring_status_response import MonitoringStatusResponse as MonitoringStatusResponse
from whisper_api_sdk.models.pattern_matching import PatternMatching as PatternMatching
from whisper_api_sdk.models.percentile_info import PercentileInfo as PercentileInfo
from whisper_api_sdk.models.pivot_request import PivotRequest as PivotRequest
from whisper_api_sdk.models.pivot_result import PivotResult as PivotResult
from whisper_api_sdk.models.prediction_point import PredictionPoint as PredictionPoint
from whisper_api_sdk.models.predictions import Predictions as Predictions
from whisper_api_sdk.models.predictive_risk_response import PredictiveRiskResponse as PredictiveRiskResponse
from whisper_api_sdk.models.progress_info import ProgressInfo as ProgressInfo
from whisper_api_sdk.models.query_info import QueryInfo as QueryInfo
from whisper_api_sdk.models.rate_limit_error import RateLimitError as RateLimitError
from whisper_api_sdk.models.relationship_info import RelationshipInfo as RelationshipInfo
from whisper_api_sdk.models.reputation_info import ReputationInfo as ReputationInfo
from whisper_api_sdk.models.risk_factor import RiskFactor as RiskFactor
from whisper_api_sdk.models.scan_request import ScanRequest as ScanRequest
from whisper_api_sdk.models.schedule_config import ScheduleConfig as ScheduleConfig
from whisper_api_sdk.models.schedule_with_screenshots import ScheduleWithScreenshots as ScheduleWithScreenshots
from whisper_api_sdk.models.screenshot_entry import ScreenshotEntry as ScreenshotEntry
from whisper_api_sdk.models.screenshot_history_response import ScreenshotHistoryResponse as ScreenshotHistoryResponse
from whisper_api_sdk.models.screenshot_options import ScreenshotOptions as ScreenshotOptions
from whisper_api_sdk.models.screenshot_request import ScreenshotRequest as ScreenshotRequest
from whisper_api_sdk.models.screenshot_schedule import ScreenshotSchedule as ScreenshotSchedule
from whisper_api_sdk.models.screenshot_schedule_list_response import ScreenshotScheduleListResponse as ScreenshotScheduleListResponse
from whisper_api_sdk.models.search_request import SearchRequest as SearchRequest
from whisper_api_sdk.models.search_response import SearchResponse as SearchResponse
from whisper_api_sdk.models.similar_case import SimilarCase as SimilarCase
from whisper_api_sdk.models.similar_cases_request import SimilarCasesRequest as SimilarCasesRequest
from whisper_api_sdk.models.similar_cases_result import SimilarCasesResult as SimilarCasesResult
from whisper_api_sdk.models.similar_domain_entry import SimilarDomainEntry as SimilarDomainEntry
from whisper_api_sdk.models.similar_domains_ops_request import SimilarDomainsOpsRequest as SimilarDomainsOpsRequest
from whisper_api_sdk.models.similar_domains_response import SimilarDomainsResponse as SimilarDomainsResponse
from whisper_api_sdk.models.subdomain_info import SubdomainInfo as SubdomainInfo
from whisper_api_sdk.models.subdomain_response import SubdomainResponse as SubdomainResponse
from whisper_api_sdk.models.summary_info import SummaryInfo as SummaryInfo
from whisper_api_sdk.models.threat_profile import ThreatProfile as ThreatProfile
from whisper_api_sdk.models.tracked_indicator import TrackedIndicator as TrackedIndicator
from whisper_api_sdk.models.tracked_indicators_response import TrackedIndicatorsResponse as TrackedIndicatorsResponse
from whisper_api_sdk.models.tracking_config import TrackingConfig as TrackingConfig
from whisper_api_sdk.models.traits_info import TraitsInfo as TraitsInfo
from whisper_api_sdk.models.trajectory_info import TrajectoryInfo as TrajectoryInfo
from whisper_api_sdk.models.trend_data import TrendData as TrendData

