Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
418 changes: 418 additions & 0 deletions .generator/schemas/v2/openapi.yaml

Large diffs are not rendered by default.

77 changes: 77 additions & 0 deletions docs/datadog_api_client.v2.model.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8859,6 +8859,41 @@ datadog\_api\_client.v2.model.flaky\_tests\_search\_sort module
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_agent\_info module
-------------------------------------------------------

.. automodule:: datadog_api_client.v2.model.fleet_agent_info
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_agent\_info\_attributes module
-------------------------------------------------------------------

.. automodule:: datadog_api_client.v2.model.fleet_agent_info_attributes
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_agent\_info\_details module
----------------------------------------------------------------

.. automodule:: datadog_api_client.v2.model.fleet_agent_info_details
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_agent\_info\_resource\_type module
-----------------------------------------------------------------------

.. automodule:: datadog_api_client.v2.model.fleet_agent_info_resource_type
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_agent\_info\_response module
-----------------------------------------------------------------

.. automodule:: datadog_api_client.v2.model.fleet_agent_info_response
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_agent\_version\_attributes module
----------------------------------------------------------------------

Expand All @@ -8880,6 +8915,20 @@ datadog\_api\_client.v2.model.fleet\_agent\_versions\_response module
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_configuration\_file module
---------------------------------------------------------------

.. automodule:: datadog_api_client.v2.model.fleet_configuration_file
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_configuration\_layer module
----------------------------------------------------------------

.. automodule:: datadog_api_client.v2.model.fleet_configuration_layer
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_deployment module
------------------------------------------------------

Expand Down Expand Up @@ -9020,6 +9069,34 @@ datadog\_api\_client.v2.model.fleet\_deployments\_response\_meta module
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_detected\_integration module
-----------------------------------------------------------------

.. automodule:: datadog_api_client.v2.model.fleet_detected_integration
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_integration\_details module
----------------------------------------------------------------

.. automodule:: datadog_api_client.v2.model.fleet_integration_details
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_integrations\_by\_status module
--------------------------------------------------------------------

.. automodule:: datadog_api_client.v2.model.fleet_integrations_by_status
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_otel\_collector module
-----------------------------------------------------------

.. automodule:: datadog_api_client.v2.model.fleet_otel_collector
:members:
:show-inheritance:

datadog\_api\_client.v2.model.fleet\_schedule module
----------------------------------------------------

Expand Down
16 changes: 16 additions & 0 deletions examples/v2/fleet-automation/GetFleetAgentInfo.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
"""
Get detailed information about an agent returns "OK" response
"""

from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.fleet_automation_api import FleetAutomationApi

configuration = Configuration()
configuration.unstable_operations["get_fleet_agent_info"] = True
with ApiClient(configuration) as api_client:
api_instance = FleetAutomationApi(api_client)
response = api_instance.get_fleet_agent_info(
agent_key="agent_key",
)

print(response)
1 change: 1 addition & 0 deletions src/datadog_api_client/configuration.py
Original file line number Diff line number Diff line change
Expand Up @@ -252,6 +252,7 @@ def __init__(
"v2.create_fleet_deployment_upgrade": False,
"v2.create_fleet_schedule": False,
"v2.delete_fleet_schedule": False,
"v2.get_fleet_agent_info": False,
"v2.get_fleet_deployment": False,
"v2.get_fleet_schedule": False,
"v2.list_fleet_agent_versions": False,
Expand Down
47 changes: 47 additions & 0 deletions src/datadog_api_client/v2/api/fleet_automation_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
unset,
)
from datadog_api_client.v2.model.fleet_agent_versions_response import FleetAgentVersionsResponse
from datadog_api_client.v2.model.fleet_agent_info_response import FleetAgentInfoResponse
from datadog_api_client.v2.model.fleet_deployments_response import FleetDeploymentsResponse
from datadog_api_client.v2.model.fleet_deployment_response import FleetDeploymentResponse
from datadog_api_client.v2.model.fleet_deployment_configure_create_request import FleetDeploymentConfigureCreateRequest
Expand Down Expand Up @@ -153,6 +154,29 @@ def __init__(self, api_client=None):
api_client=api_client,
)

self._get_fleet_agent_info_endpoint = _Endpoint(
settings={
"response_type": (FleetAgentInfoResponse,),
"auth": ["apiKeyAuth", "appKeyAuth"],
"endpoint_path": "/api/unstable/fleet/agents/{agent_key}",
"operation_id": "get_fleet_agent_info",
"http_method": "GET",
"version": "v2",
},
params_map={
"agent_key": {
"required": True,
"openapi_types": (str,),
"attribute": "agent_key",
"location": "path",
},
},
headers_map={
"accept": ["application/json"],
},
api_client=api_client,
)

self._get_fleet_deployment_endpoint = _Endpoint(
settings={
"response_type": (FleetDeploymentResponse,),
Expand Down Expand Up @@ -456,6 +480,29 @@ def delete_fleet_schedule(

return self._delete_fleet_schedule_endpoint.call_with_http_info(**kwargs)

def get_fleet_agent_info(
self,
agent_key: str,
) -> FleetAgentInfoResponse:
"""Get detailed information about an agent.

Retrieve detailed information about a specific Datadog Agent.
This endpoint returns comprehensive information about an agent including:

* Agent details and metadata
* Configured integrations organized by status (working, warning, error, missing)
* Detected integrations
* Configuration files and layers

:param agent_key: The unique identifier (agent key) for the Datadog Agent.
:type agent_key: str
:rtype: FleetAgentInfoResponse
"""
kwargs: Dict[str, Any] = {}
kwargs["agent_key"] = agent_key

return self._get_fleet_agent_info_endpoint.call_with_http_info(**kwargs)

def get_fleet_deployment(
self,
deployment_id: str,
Expand Down
54 changes: 54 additions & 0 deletions src/datadog_api_client/v2/model/fleet_agent_info.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
# This product includes software developed at Datadog (https://www.datadoghq.com/).
# Copyright 2019-Present Datadog, Inc.
from __future__ import annotations

from typing import TYPE_CHECKING

from datadog_api_client.model_utils import (
ModelNormal,
cached_property,
)


if TYPE_CHECKING:
from datadog_api_client.v2.model.fleet_agent_info_attributes import FleetAgentInfoAttributes
from datadog_api_client.v2.model.fleet_agent_info_resource_type import FleetAgentInfoResourceType


class FleetAgentInfo(ModelNormal):
@cached_property
def openapi_types(_):
from datadog_api_client.v2.model.fleet_agent_info_attributes import FleetAgentInfoAttributes
from datadog_api_client.v2.model.fleet_agent_info_resource_type import FleetAgentInfoResourceType

return {
"attributes": (FleetAgentInfoAttributes,),
"id": (str,),
"type": (FleetAgentInfoResourceType,),
}

attribute_map = {
"attributes": "attributes",
"id": "id",
"type": "type",
}

def __init__(self_, attributes: FleetAgentInfoAttributes, id: str, type: FleetAgentInfoResourceType, **kwargs):
"""
Represents detailed information about a specific Datadog Agent.

:param attributes: Attributes for agent information.
:type attributes: FleetAgentInfoAttributes

:param id: The unique agent key identifier.
:type id: str

:param type: The type of Agent info resource.
:type type: FleetAgentInfoResourceType
"""
super().__init__(kwargs)

self_.attributes = attributes
self_.id = id
self_.type = type
76 changes: 76 additions & 0 deletions src/datadog_api_client/v2/model/fleet_agent_info_attributes.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
# This product includes software developed at Datadog (https://www.datadoghq.com/).
# Copyright 2019-Present Datadog, Inc.
from __future__ import annotations

from typing import List, Union, TYPE_CHECKING

from datadog_api_client.model_utils import (
ModelNormal,
cached_property,
unset,
UnsetType,
)


if TYPE_CHECKING:
from datadog_api_client.v2.model.fleet_agent_info_details import FleetAgentInfoDetails
from datadog_api_client.v2.model.fleet_configuration_layer import FleetConfigurationLayer
from datadog_api_client.v2.model.fleet_detected_integration import FleetDetectedIntegration
from datadog_api_client.v2.model.fleet_integrations_by_status import FleetIntegrationsByStatus


class FleetAgentInfoAttributes(ModelNormal):
@cached_property
def openapi_types(_):
from datadog_api_client.v2.model.fleet_agent_info_details import FleetAgentInfoDetails
from datadog_api_client.v2.model.fleet_configuration_layer import FleetConfigurationLayer
from datadog_api_client.v2.model.fleet_detected_integration import FleetDetectedIntegration
from datadog_api_client.v2.model.fleet_integrations_by_status import FleetIntegrationsByStatus

return {
"agent_infos": (FleetAgentInfoDetails,),
"configuration_files": (FleetConfigurationLayer,),
"detected_integrations": ([FleetDetectedIntegration],),
"integrations": (FleetIntegrationsByStatus,),
}

attribute_map = {
"agent_infos": "agent_infos",
"configuration_files": "configuration_files",
"detected_integrations": "detected_integrations",
"integrations": "integrations",
}

def __init__(
self_,
agent_infos: Union[FleetAgentInfoDetails, UnsetType] = unset,
configuration_files: Union[FleetConfigurationLayer, UnsetType] = unset,
detected_integrations: Union[List[FleetDetectedIntegration], UnsetType] = unset,
integrations: Union[FleetIntegrationsByStatus, UnsetType] = unset,
**kwargs,
):
"""
Attributes for agent information.

:param agent_infos: Detailed information about a Datadog Agent.
:type agent_infos: FleetAgentInfoDetails, optional

:param configuration_files: Configuration information organized by layers.
:type configuration_files: FleetConfigurationLayer, optional

:param detected_integrations: List of detected integrations.
:type detected_integrations: [FleetDetectedIntegration], optional

:param integrations: Integrations organized by their status.
:type integrations: FleetIntegrationsByStatus, optional
"""
if agent_infos is not unset:
kwargs["agent_infos"] = agent_infos
if configuration_files is not unset:
kwargs["configuration_files"] = configuration_files
if detected_integrations is not unset:
kwargs["detected_integrations"] = detected_integrations
if integrations is not unset:
kwargs["integrations"] = integrations
super().__init__(kwargs)
Loading