Skip to content

Commit 8041617

Browse files
api-clients-generation-pipeline[bot]ci.datadog-api-spec
andauthored
Add support for Entity kind API (#2387)
Co-authored-by: ci.datadog-api-spec <[email protected]>
1 parent 4cc9fc7 commit 8041617

13 files changed

+636
-5
lines changed

.apigentools-info

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@
44
"spec_versions": {
55
"v1": {
66
"apigentools_version": "1.6.6",
7-
"regenerated": "2025-01-31 15:03:10.251959",
8-
"spec_repo_commit": "b01f90f4"
7+
"regenerated": "2025-02-03 15:48:00.738383",
8+
"spec_repo_commit": "d6014add"
99
},
1010
"v2": {
1111
"apigentools_version": "1.6.6",
12-
"regenerated": "2025-01-31 15:03:10.267307",
13-
"spec_repo_commit": "b01f90f4"
12+
"regenerated": "2025-02-03 15:48:00.757943",
13+
"spec_repo_commit": "d6014add"
1414
}
1515
}
1616
}

.generator/schemas/v2/openapi.yaml

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10524,6 +10524,99 @@ components:
1052410524
- $ref: '#/components/schemas/EntityV3Datastore'
1052510525
- $ref: '#/components/schemas/EntityV3Queue'
1052610526
- $ref: '#/components/schemas/EntityV3System'
10527+
- $ref: '#/components/schemas/EntityV3API'
10528+
EntityV3API:
10529+
additionalProperties: false
10530+
description: Schema for API entities.
10531+
properties:
10532+
apiVersion:
10533+
$ref: '#/components/schemas/EntityV3APIVersion'
10534+
datadog:
10535+
$ref: '#/components/schemas/EntityV3APIDatadog'
10536+
extensions:
10537+
additionalProperties: {}
10538+
description: Custom extensions. This is the free-formed field to send client-side
10539+
metadata. No Datadog features are affected by this field.
10540+
type: object
10541+
integrations:
10542+
$ref: '#/components/schemas/EntityV3Integrations'
10543+
kind:
10544+
$ref: '#/components/schemas/EntityV3APIKind'
10545+
metadata:
10546+
$ref: '#/components/schemas/EntityV3Metadata'
10547+
spec:
10548+
$ref: '#/components/schemas/EntityV3APISpec'
10549+
required:
10550+
- apiVersion
10551+
- kind
10552+
- metadata
10553+
type: object
10554+
EntityV3APIDatadog:
10555+
additionalProperties: false
10556+
description: Datadog product integrations for the API entity.
10557+
properties:
10558+
codeLocations:
10559+
$ref: '#/components/schemas/EntityV3DatadogCodeLocations'
10560+
events:
10561+
$ref: '#/components/schemas/EntityV3DatadogEvents'
10562+
logs:
10563+
$ref: '#/components/schemas/EntityV3DatadogLogs'
10564+
performanceData:
10565+
$ref: '#/components/schemas/EntityV3DatadogPerformance'
10566+
pipelines:
10567+
$ref: '#/components/schemas/EntityV3DatadogPipelines'
10568+
type: object
10569+
EntityV3APIKind:
10570+
description: The definition of Entity V3 API Kind object.
10571+
enum:
10572+
- api
10573+
example: api
10574+
type: string
10575+
x-enum-varnames:
10576+
- API
10577+
EntityV3APISpec:
10578+
additionalProperties: false
10579+
description: The definition of Entity V3 API Spec object.
10580+
properties:
10581+
implementedBy:
10582+
description: Services which implemented the API.
10583+
items:
10584+
type: string
10585+
type: array
10586+
interface:
10587+
$ref: '#/components/schemas/EntityV3APISpecInterface'
10588+
lifecycle:
10589+
description: The lifecycle state of the component.
10590+
minLength: 1
10591+
type: string
10592+
tier:
10593+
description: The importance of the component.
10594+
minLength: 1
10595+
type: string
10596+
type:
10597+
description: The type of API.
10598+
type: string
10599+
type: object
10600+
EntityV3APISpecInterface:
10601+
additionalProperties: false
10602+
description: The API definition.
10603+
oneOf:
10604+
- $ref: '#/components/schemas/EntityV3APISpecInterfaceFileRef'
10605+
- $ref: '#/components/schemas/EntityV3APISpecInterfaceDefinition'
10606+
EntityV3APISpecInterfaceDefinition:
10607+
additionalProperties: false
10608+
description: The definition of `EntityV3APISpecInterfaceDefinition` object.
10609+
properties:
10610+
definition:
10611+
description: The API definition.
10612+
type: object
10613+
EntityV3APISpecInterfaceFileRef:
10614+
additionalProperties: false
10615+
description: The definition of `EntityV3APISpecInterfaceFileRef` object.
10616+
properties:
10617+
fileRef:
10618+
description: The reference to the API definition file.
10619+
type: string
1052710620
EntityV3APIVersion:
1052810621
description: The schema version of entity type. The field is known as schema-version
1052910622
in the previous version.

docs/datadog_api_client.v2.model.rst

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4260,6 +4260,55 @@ datadog\_api\_client.v2.model.entity\_v3 module
42604260
:members:
42614261
:show-inheritance:
42624262

4263+
datadog\_api\_client.v2.model.entity\_v3\_api module
4264+
----------------------------------------------------
4265+
4266+
.. automodule:: datadog_api_client.v2.model.entity_v3_api
4267+
:members:
4268+
:show-inheritance:
4269+
4270+
datadog\_api\_client.v2.model.entity\_v3\_api\_datadog module
4271+
-------------------------------------------------------------
4272+
4273+
.. automodule:: datadog_api_client.v2.model.entity_v3_api_datadog
4274+
:members:
4275+
:show-inheritance:
4276+
4277+
datadog\_api\_client.v2.model.entity\_v3\_api\_kind module
4278+
----------------------------------------------------------
4279+
4280+
.. automodule:: datadog_api_client.v2.model.entity_v3_api_kind
4281+
:members:
4282+
:show-inheritance:
4283+
4284+
datadog\_api\_client.v2.model.entity\_v3\_api\_spec module
4285+
----------------------------------------------------------
4286+
4287+
.. automodule:: datadog_api_client.v2.model.entity_v3_api_spec
4288+
:members:
4289+
:show-inheritance:
4290+
4291+
datadog\_api\_client.v2.model.entity\_v3\_api\_spec\_interface module
4292+
---------------------------------------------------------------------
4293+
4294+
.. automodule:: datadog_api_client.v2.model.entity_v3_api_spec_interface
4295+
:members:
4296+
:show-inheritance:
4297+
4298+
datadog\_api\_client.v2.model.entity\_v3\_api\_spec\_interface\_definition module
4299+
---------------------------------------------------------------------------------
4300+
4301+
.. automodule:: datadog_api_client.v2.model.entity_v3_api_spec_interface_definition
4302+
:members:
4303+
:show-inheritance:
4304+
4305+
datadog\_api\_client.v2.model.entity\_v3\_api\_spec\_interface\_file\_ref module
4306+
--------------------------------------------------------------------------------
4307+
4308+
.. automodule:: datadog_api_client.v2.model.entity_v3_api_spec_interface_file_ref
4309+
:members:
4310+
:show-inheritance:
4311+
42634312
datadog\_api\_client.v2.model.entity\_v3\_datadog\_code\_location\_item module
42644313
------------------------------------------------------------------------------
42654314

src/datadog_api_client/v2/model/entity_response_included_schema_attributes.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
from datadog_api_client.v2.model.entity_v3_datastore import EntityV3Datastore
2020
from datadog_api_client.v2.model.entity_v3_queue import EntityV3Queue
2121
from datadog_api_client.v2.model.entity_v3_system import EntityV3System
22+
from datadog_api_client.v2.model.entity_v3_api import EntityV3API
2223

2324

2425
class EntityResponseIncludedSchemaAttributes(ModelNormal):
@@ -36,7 +37,9 @@ def openapi_types(_):
3637

3738
def __init__(
3839
self_,
39-
schema: Union[EntityV3, EntityV3Service, EntityV3Datastore, EntityV3Queue, EntityV3System, UnsetType] = unset,
40+
schema: Union[
41+
EntityV3, EntityV3Service, EntityV3Datastore, EntityV3Queue, EntityV3System, EntityV3API, UnsetType
42+
] = unset,
4043
**kwargs,
4144
):
4245
"""

src/datadog_api_client/v2/model/entity_v3.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,14 @@ def _composed_schemas(_):
5151
from datadog_api_client.v2.model.entity_v3_datastore import EntityV3Datastore
5252
from datadog_api_client.v2.model.entity_v3_queue import EntityV3Queue
5353
from datadog_api_client.v2.model.entity_v3_system import EntityV3System
54+
from datadog_api_client.v2.model.entity_v3_api import EntityV3API
5455

5556
return {
5657
"oneOf": [
5758
EntityV3Service,
5859
EntityV3Datastore,
5960
EntityV3Queue,
6061
EntityV3System,
62+
EntityV3API,
6163
],
6264
}
Lines changed: 125 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,125 @@
1+
# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
2+
# This product includes software developed at Datadog (https://www.datadoghq.com/).
3+
# Copyright 2019-Present Datadog, Inc.
4+
from __future__ import annotations
5+
6+
from typing import Any, Dict, Union, TYPE_CHECKING
7+
8+
from datadog_api_client.model_utils import (
9+
ModelNormal,
10+
cached_property,
11+
date,
12+
datetime,
13+
none_type,
14+
unset,
15+
UnsetType,
16+
UUID,
17+
)
18+
19+
20+
if TYPE_CHECKING:
21+
from datadog_api_client.v2.model.entity_v3_api_version import EntityV3APIVersion
22+
from datadog_api_client.v2.model.entity_v3_api_datadog import EntityV3APIDatadog
23+
from datadog_api_client.v2.model.entity_v3_integrations import EntityV3Integrations
24+
from datadog_api_client.v2.model.entity_v3_api_kind import EntityV3APIKind
25+
from datadog_api_client.v2.model.entity_v3_metadata import EntityV3Metadata
26+
from datadog_api_client.v2.model.entity_v3_api_spec import EntityV3APISpec
27+
28+
29+
class EntityV3API(ModelNormal):
30+
@cached_property
31+
def additional_properties_type(_):
32+
return None
33+
34+
@cached_property
35+
def openapi_types(_):
36+
from datadog_api_client.v2.model.entity_v3_api_version import EntityV3APIVersion
37+
from datadog_api_client.v2.model.entity_v3_api_datadog import EntityV3APIDatadog
38+
from datadog_api_client.v2.model.entity_v3_integrations import EntityV3Integrations
39+
from datadog_api_client.v2.model.entity_v3_api_kind import EntityV3APIKind
40+
from datadog_api_client.v2.model.entity_v3_metadata import EntityV3Metadata
41+
from datadog_api_client.v2.model.entity_v3_api_spec import EntityV3APISpec
42+
43+
return {
44+
"api_version": (EntityV3APIVersion,),
45+
"datadog": (EntityV3APIDatadog,),
46+
"extensions": (
47+
{
48+
str: (
49+
bool,
50+
date,
51+
datetime,
52+
dict,
53+
float,
54+
int,
55+
list,
56+
str,
57+
UUID,
58+
none_type,
59+
)
60+
},
61+
),
62+
"integrations": (EntityV3Integrations,),
63+
"kind": (EntityV3APIKind,),
64+
"metadata": (EntityV3Metadata,),
65+
"spec": (EntityV3APISpec,),
66+
}
67+
68+
attribute_map = {
69+
"api_version": "apiVersion",
70+
"datadog": "datadog",
71+
"extensions": "extensions",
72+
"integrations": "integrations",
73+
"kind": "kind",
74+
"metadata": "metadata",
75+
"spec": "spec",
76+
}
77+
78+
def __init__(
79+
self_,
80+
api_version: EntityV3APIVersion,
81+
kind: EntityV3APIKind,
82+
metadata: EntityV3Metadata,
83+
datadog: Union[EntityV3APIDatadog, UnsetType] = unset,
84+
extensions: Union[Dict[str, Any], UnsetType] = unset,
85+
integrations: Union[EntityV3Integrations, UnsetType] = unset,
86+
spec: Union[EntityV3APISpec, UnsetType] = unset,
87+
**kwargs,
88+
):
89+
"""
90+
Schema for API entities.
91+
92+
:param api_version: The schema version of entity type. The field is known as schema-version in the previous version.
93+
:type api_version: EntityV3APIVersion
94+
95+
:param datadog: Datadog product integrations for the API entity.
96+
:type datadog: EntityV3APIDatadog, optional
97+
98+
:param extensions: Custom extensions. This is the free-formed field to send client-side metadata. No Datadog features are affected by this field.
99+
:type extensions: {str: (bool, date, datetime, dict, float, int, list, str, UUID, none_type,)}, optional
100+
101+
:param integrations: A base schema for defining third-party integrations.
102+
:type integrations: EntityV3Integrations, optional
103+
104+
:param kind: The definition of Entity V3 API Kind object.
105+
:type kind: EntityV3APIKind
106+
107+
:param metadata: The definition of Entity V3 Metadata object.
108+
:type metadata: EntityV3Metadata
109+
110+
:param spec: The definition of Entity V3 API Spec object.
111+
:type spec: EntityV3APISpec, optional
112+
"""
113+
if datadog is not unset:
114+
kwargs["datadog"] = datadog
115+
if extensions is not unset:
116+
kwargs["extensions"] = extensions
117+
if integrations is not unset:
118+
kwargs["integrations"] = integrations
119+
if spec is not unset:
120+
kwargs["spec"] = spec
121+
super().__init__(kwargs)
122+
123+
self_.api_version = api_version
124+
self_.kind = kind
125+
self_.metadata = metadata

0 commit comments

Comments
 (0)