Skip to content

Commit 2de34e3

Browse files
api-clients-generation-pipeline[bot]ci.datadog-api-spec
andauthored
[FA] Add get agent-s endpoints (#2969)
Co-authored-by: ci.datadog-api-spec <packages@datadoghq.com>
1 parent 99693fa commit 2de34e3

26 files changed

+2359
-2
lines changed

.generator/schemas/v2/openapi.yaml

Lines changed: 650 additions & 1 deletion
Large diffs are not rendered by default.

docs/datadog_api_client.v2.model.rst

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9174,6 +9174,55 @@ datadog\_api\_client.v2.model.flaky\_tests\_search\_sort module
91749174
:members:
91759175
:show-inheritance:
91769176

9177+
datadog\_api\_client.v2.model.fleet\_agent\_attributes module
9178+
-------------------------------------------------------------
9179+
9180+
.. automodule:: datadog_api_client.v2.model.fleet_agent_attributes
9181+
:members:
9182+
:show-inheritance:
9183+
9184+
datadog\_api\_client.v2.model.fleet\_agent\_attributes\_tags\_items module
9185+
--------------------------------------------------------------------------
9186+
9187+
.. automodule:: datadog_api_client.v2.model.fleet_agent_attributes_tags_items
9188+
:members:
9189+
:show-inheritance:
9190+
9191+
datadog\_api\_client.v2.model.fleet\_agent\_info module
9192+
-------------------------------------------------------
9193+
9194+
.. automodule:: datadog_api_client.v2.model.fleet_agent_info
9195+
:members:
9196+
:show-inheritance:
9197+
9198+
datadog\_api\_client.v2.model.fleet\_agent\_info\_attributes module
9199+
-------------------------------------------------------------------
9200+
9201+
.. automodule:: datadog_api_client.v2.model.fleet_agent_info_attributes
9202+
:members:
9203+
:show-inheritance:
9204+
9205+
datadog\_api\_client.v2.model.fleet\_agent\_info\_details module
9206+
----------------------------------------------------------------
9207+
9208+
.. automodule:: datadog_api_client.v2.model.fleet_agent_info_details
9209+
:members:
9210+
:show-inheritance:
9211+
9212+
datadog\_api\_client.v2.model.fleet\_agent\_info\_resource\_type module
9213+
-----------------------------------------------------------------------
9214+
9215+
.. automodule:: datadog_api_client.v2.model.fleet_agent_info_resource_type
9216+
:members:
9217+
:show-inheritance:
9218+
9219+
datadog\_api\_client.v2.model.fleet\_agent\_info\_response module
9220+
-----------------------------------------------------------------
9221+
9222+
.. automodule:: datadog_api_client.v2.model.fleet_agent_info_response
9223+
:members:
9224+
:show-inheritance:
9225+
91779226
datadog\_api\_client.v2.model.fleet\_agent\_version\_attributes module
91789227
----------------------------------------------------------------------
91799228

@@ -9195,6 +9244,48 @@ datadog\_api\_client.v2.model.fleet\_agent\_versions\_response module
91959244
:members:
91969245
:show-inheritance:
91979246

9247+
datadog\_api\_client.v2.model.fleet\_agents\_response module
9248+
------------------------------------------------------------
9249+
9250+
.. automodule:: datadog_api_client.v2.model.fleet_agents_response
9251+
:members:
9252+
:show-inheritance:
9253+
9254+
datadog\_api\_client.v2.model.fleet\_agents\_response\_data module
9255+
------------------------------------------------------------------
9256+
9257+
.. automodule:: datadog_api_client.v2.model.fleet_agents_response_data
9258+
:members:
9259+
:show-inheritance:
9260+
9261+
datadog\_api\_client.v2.model.fleet\_agents\_response\_data\_attributes module
9262+
------------------------------------------------------------------------------
9263+
9264+
.. automodule:: datadog_api_client.v2.model.fleet_agents_response_data_attributes
9265+
:members:
9266+
:show-inheritance:
9267+
9268+
datadog\_api\_client.v2.model.fleet\_agents\_response\_meta module
9269+
------------------------------------------------------------------
9270+
9271+
.. automodule:: datadog_api_client.v2.model.fleet_agents_response_meta
9272+
:members:
9273+
:show-inheritance:
9274+
9275+
datadog\_api\_client.v2.model.fleet\_configuration\_file module
9276+
---------------------------------------------------------------
9277+
9278+
.. automodule:: datadog_api_client.v2.model.fleet_configuration_file
9279+
:members:
9280+
:show-inheritance:
9281+
9282+
datadog\_api\_client.v2.model.fleet\_configuration\_layer module
9283+
----------------------------------------------------------------
9284+
9285+
.. automodule:: datadog_api_client.v2.model.fleet_configuration_layer
9286+
:members:
9287+
:show-inheritance:
9288+
91989289
datadog\_api\_client.v2.model.fleet\_deployment module
91999290
------------------------------------------------------
92009291

@@ -9335,6 +9426,34 @@ datadog\_api\_client.v2.model.fleet\_deployments\_response\_meta module
93359426
:members:
93369427
:show-inheritance:
93379428

9429+
datadog\_api\_client.v2.model.fleet\_detected\_integration module
9430+
-----------------------------------------------------------------
9431+
9432+
.. automodule:: datadog_api_client.v2.model.fleet_detected_integration
9433+
:members:
9434+
:show-inheritance:
9435+
9436+
datadog\_api\_client.v2.model.fleet\_integration\_details module
9437+
----------------------------------------------------------------
9438+
9439+
.. automodule:: datadog_api_client.v2.model.fleet_integration_details
9440+
:members:
9441+
:show-inheritance:
9442+
9443+
datadog\_api\_client.v2.model.fleet\_integrations\_by\_status module
9444+
--------------------------------------------------------------------
9445+
9446+
.. automodule:: datadog_api_client.v2.model.fleet_integrations_by_status
9447+
:members:
9448+
:show-inheritance:
9449+
9450+
datadog\_api\_client.v2.model.fleet\_otel\_collector module
9451+
-----------------------------------------------------------
9452+
9453+
.. automodule:: datadog_api_client.v2.model.fleet_otel_collector
9454+
:members:
9455+
:show-inheritance:
9456+
93389457
datadog\_api\_client.v2.model.fleet\_schedule module
93399458
----------------------------------------------------
93409459

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
"""
2+
Get detailed information about an agent returns "OK" response
3+
"""
4+
5+
from datadog_api_client import ApiClient, Configuration
6+
from datadog_api_client.v2.api.fleet_automation_api import FleetAutomationApi
7+
8+
configuration = Configuration()
9+
configuration.unstable_operations["get_fleet_agent_info"] = True
10+
with ApiClient(configuration) as api_client:
11+
api_instance = FleetAutomationApi(api_client)
12+
response = api_instance.get_fleet_agent_info(
13+
agent_key="agent_key",
14+
)
15+
16+
print(response)
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
"""
2+
List all Datadog Agents returns "OK" response
3+
"""
4+
5+
from datadog_api_client import ApiClient, Configuration
6+
from datadog_api_client.v2.api.fleet_automation_api import FleetAutomationApi
7+
8+
configuration = Configuration()
9+
configuration.unstable_operations["list_fleet_agents"] = True
10+
with ApiClient(configuration) as api_client:
11+
api_instance = FleetAutomationApi(api_client)
12+
response = api_instance.list_fleet_agents()
13+
14+
print(response)

src/datadog_api_client/configuration.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -252,8 +252,10 @@ def __init__(
252252
"v2.create_fleet_deployment_upgrade": False,
253253
"v2.create_fleet_schedule": False,
254254
"v2.delete_fleet_schedule": False,
255+
"v2.get_fleet_agent_info": False,
255256
"v2.get_fleet_deployment": False,
256257
"v2.get_fleet_schedule": False,
258+
"v2.list_fleet_agents": False,
257259
"v2.list_fleet_agent_versions": False,
258260
"v2.list_fleet_deployments": False,
259261
"v2.list_fleet_schedules": False,

src/datadog_api_client/v2/api/fleet_automation_api.py

Lines changed: 154 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
unset,
1313
)
1414
from datadog_api_client.v2.model.fleet_agent_versions_response import FleetAgentVersionsResponse
15+
from datadog_api_client.v2.model.fleet_agents_response import FleetAgentsResponse
16+
from datadog_api_client.v2.model.fleet_agent_info_response import FleetAgentInfoResponse
1517
from datadog_api_client.v2.model.fleet_deployments_response import FleetDeploymentsResponse
1618
from datadog_api_client.v2.model.fleet_deployment_response import FleetDeploymentResponse
1719
from datadog_api_client.v2.model.fleet_deployment_configure_create_request import FleetDeploymentConfigureCreateRequest
@@ -153,6 +155,29 @@ def __init__(self, api_client=None):
153155
api_client=api_client,
154156
)
155157

158+
self._get_fleet_agent_info_endpoint = _Endpoint(
159+
settings={
160+
"response_type": (FleetAgentInfoResponse,),
161+
"auth": ["apiKeyAuth", "appKeyAuth"],
162+
"endpoint_path": "/api/unstable/fleet/agents/{agent_key}",
163+
"operation_id": "get_fleet_agent_info",
164+
"http_method": "GET",
165+
"version": "v2",
166+
},
167+
params_map={
168+
"agent_key": {
169+
"required": True,
170+
"openapi_types": (str,),
171+
"attribute": "agent_key",
172+
"location": "path",
173+
},
174+
},
175+
headers_map={
176+
"accept": ["application/json"],
177+
},
178+
api_client=api_client,
179+
)
180+
156181
self._get_fleet_deployment_endpoint = _Endpoint(
157182
settings={
158183
"response_type": (FleetDeploymentResponse,),
@@ -212,11 +237,65 @@ def __init__(self, api_client=None):
212237
api_client=api_client,
213238
)
214239

240+
self._list_fleet_agents_endpoint = _Endpoint(
241+
settings={
242+
"response_type": (FleetAgentsResponse,),
243+
"auth": ["apiKeyAuth", "appKeyAuth"],
244+
"endpoint_path": "/api/unstable/fleet/agents",
245+
"operation_id": "list_fleet_agents",
246+
"http_method": "GET",
247+
"version": "v2",
248+
},
249+
params_map={
250+
"page_number": {
251+
"validation": {
252+
"inclusive_minimum": 1,
253+
},
254+
"openapi_types": (int,),
255+
"attribute": "page_number",
256+
"location": "query",
257+
},
258+
"page_size": {
259+
"validation": {
260+
"inclusive_maximum": 100,
261+
"inclusive_minimum": 1,
262+
},
263+
"openapi_types": (int,),
264+
"attribute": "page_size",
265+
"location": "query",
266+
},
267+
"sort_attribute": {
268+
"openapi_types": (str,),
269+
"attribute": "sort_attribute",
270+
"location": "query",
271+
},
272+
"sort_descending": {
273+
"openapi_types": (bool,),
274+
"attribute": "sort_descending",
275+
"location": "query",
276+
},
277+
"tags": {
278+
"openapi_types": (str,),
279+
"attribute": "tags",
280+
"location": "query",
281+
},
282+
"filter": {
283+
"openapi_types": (str,),
284+
"attribute": "filter",
285+
"location": "query",
286+
},
287+
},
288+
headers_map={
289+
"accept": ["application/json"],
290+
},
291+
api_client=api_client,
292+
)
293+
215294
self._list_fleet_agent_versions_endpoint = _Endpoint(
216295
settings={
217296
"response_type": (FleetAgentVersionsResponse,),
218297
"auth": ["apiKeyAuth", "appKeyAuth"],
219-
"endpoint_path": "/api/unstable/fleet/agents",
298+
"endpoint_path": "/api/unstable/fleet/agent_versions",
220299
"operation_id": "list_fleet_agent_versions",
221300
"http_method": "GET",
222301
"version": "v2",
@@ -456,6 +535,29 @@ def delete_fleet_schedule(
456535

457536
return self._delete_fleet_schedule_endpoint.call_with_http_info(**kwargs)
458537

538+
def get_fleet_agent_info(
539+
self,
540+
agent_key: str,
541+
) -> FleetAgentInfoResponse:
542+
"""Get detailed information about an agent.
543+
544+
Retrieve detailed information about a specific Datadog Agent.
545+
This endpoint returns comprehensive information about an agent including:
546+
547+
* Agent details and metadata
548+
* Configured integrations organized by status (working, warning, error, missing)
549+
* Detected integrations
550+
* Configuration files and layers
551+
552+
:param agent_key: The unique identifier (agent key) for the Datadog Agent.
553+
:type agent_key: str
554+
:rtype: FleetAgentInfoResponse
555+
"""
556+
kwargs: Dict[str, Any] = {}
557+
kwargs["agent_key"] = agent_key
558+
559+
return self._get_fleet_agent_info_endpoint.call_with_http_info(**kwargs)
560+
459561
def get_fleet_deployment(
460562
self,
461563
deployment_id: str,
@@ -532,6 +634,57 @@ def get_fleet_schedule(
532634

533635
return self._get_fleet_schedule_endpoint.call_with_http_info(**kwargs)
534636

637+
def list_fleet_agents(
638+
self,
639+
*,
640+
page_number: Union[int, UnsetType] = unset,
641+
page_size: Union[int, UnsetType] = unset,
642+
sort_attribute: Union[str, UnsetType] = unset,
643+
sort_descending: Union[bool, UnsetType] = unset,
644+
tags: Union[str, UnsetType] = unset,
645+
filter: Union[str, UnsetType] = unset,
646+
) -> FleetAgentsResponse:
647+
"""List all Datadog Agents.
648+
649+
Retrieve a paginated list of all Datadog Agents.
650+
This endpoint returns a paginated list of all Datadog Agents with support for pagination, sorting, and filtering.
651+
Use the ``page_number`` and ``page_size`` query parameters to paginate through results.
652+
653+
:param page_number: Page number for pagination (must be greater than 0).
654+
:type page_number: int, optional
655+
:param page_size: Number of results per page (must be greater than 0 and less than or equal to 100).
656+
:type page_size: int, optional
657+
:param sort_attribute: Attribute to sort by.
658+
:type sort_attribute: str, optional
659+
:param sort_descending: Sort order (true for descending, false for ascending).
660+
:type sort_descending: bool, optional
661+
:param tags: Comma-separated list of tags to filter agents.
662+
:type tags: str, optional
663+
:param filter: Filter string for narrowing down agent results.
664+
:type filter: str, optional
665+
:rtype: FleetAgentsResponse
666+
"""
667+
kwargs: Dict[str, Any] = {}
668+
if page_number is not unset:
669+
kwargs["page_number"] = page_number
670+
671+
if page_size is not unset:
672+
kwargs["page_size"] = page_size
673+
674+
if sort_attribute is not unset:
675+
kwargs["sort_attribute"] = sort_attribute
676+
677+
if sort_descending is not unset:
678+
kwargs["sort_descending"] = sort_descending
679+
680+
if tags is not unset:
681+
kwargs["tags"] = tags
682+
683+
if filter is not unset:
684+
kwargs["filter"] = filter
685+
686+
return self._list_fleet_agents_endpoint.call_with_http_info(**kwargs)
687+
535688
def list_fleet_agent_versions(
536689
self,
537690
) -> FleetAgentVersionsResponse:

0 commit comments

Comments
 (0)