Skip to content

Commit d437834

Browse files
api-clients-generation-pipeline[bot]ci.datadog-api-spec
andauthored
Add support for GCP STS endpoints (#1464)
Co-authored-by: ci.datadog-api-spec <[email protected]>
1 parent fb77e1e commit d437834

File tree

38 files changed

+1719
-4
lines changed

38 files changed

+1719
-4
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.4",
7-
"regenerated": "2023-05-26 17:55:29.217108",
8-
"spec_repo_commit": "c4844513"
7+
"regenerated": "2023-05-30 14:28:55.332880",
8+
"spec_repo_commit": "adf5379f"
99
},
1010
"v2": {
1111
"apigentools_version": "1.6.4",
12-
"regenerated": "2023-05-26 17:55:29.229049",
13-
"spec_repo_commit": "c4844513"
12+
"regenerated": "2023-05-30 14:28:55.345353",
13+
"spec_repo_commit": "adf5379f"
1414
}
1515
}
1616
}

.generator/schemas/v2/openapi.yaml

Lines changed: 297 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,13 @@ components:
173173
required: true
174174
schema:
175175
type: string
176+
GCPSTSServiceAccountID:
177+
description: Your GCP STS enabled service account's unique ID.
178+
in: path
179+
name: account_id
180+
required: true
181+
schema:
182+
type: string
176183
IncidentAttachmentFilterQueryParameter:
177184
description: Specifies which types of attachments are included in the response.
178185
explode: false
@@ -3929,6 +3936,142 @@ components:
39293936
nullable: true
39303937
type: array
39313938
type: object
3939+
GCPSTSDelegateAccount:
3940+
description: Datadog principal service account info.
3941+
properties:
3942+
attributes:
3943+
$ref: '#/components/schemas/GCPSTSDelegateAccountAttributes'
3944+
id:
3945+
description: The ID of the delegate service account.
3946+
example: ddgci-1a19n28hb1a812221893@datadog-gci-sts-us5-prod.iam.gserviceaccount.com
3947+
type: string
3948+
type:
3949+
$ref: '#/components/schemas/GCPSTSDelegateAccountType'
3950+
type: object
3951+
GCPSTSDelegateAccountAttributes:
3952+
description: Your delegate account attributes.
3953+
properties:
3954+
delegate_account_email:
3955+
description: Your organization's Datadog principal email address.
3956+
example: ddgci-1a19n28hb1a812221893@datadog-gci-sts-us5-prod.iam.gserviceaccount.com
3957+
type: string
3958+
type: object
3959+
GCPSTSDelegateAccountResponse:
3960+
description: Your delegate service account response data.
3961+
properties:
3962+
data:
3963+
$ref: '#/components/schemas/GCPSTSDelegateAccount'
3964+
type: object
3965+
GCPSTSDelegateAccountType:
3966+
default: gcp_sts_delegate
3967+
description: The type of account.
3968+
enum:
3969+
- gcp_sts_delegate
3970+
example: gcp_sts_delegate
3971+
type: string
3972+
x-enum-varnames:
3973+
- GCP_STS_DELEGATE
3974+
GCPSTSServiceAccount:
3975+
description: Info on your service account.
3976+
properties:
3977+
attributes:
3978+
$ref: '#/components/schemas/GCPSTSServiceAccountAttributes'
3979+
id:
3980+
description: Your service account's unique ID.
3981+
example: d291291f-12c2-22g4-j290-123456678897
3982+
type: string
3983+
meta:
3984+
$ref: '#/components/schemas/GCPServiceAccountMeta'
3985+
type:
3986+
$ref: '#/components/schemas/GCPServiceAccountType'
3987+
type: object
3988+
GCPSTSServiceAccountAttributes:
3989+
description: Attributes associated with your service account.
3990+
properties:
3991+
automute:
3992+
description: Silence monitors for expected GCE instance shutdowns.
3993+
type: boolean
3994+
client_email:
3995+
description: Your service account email address.
3996+
3997+
type: string
3998+
host_filters:
3999+
description: Your Host Filters.
4000+
items:
4001+
description: Host Filters
4002+
type: string
4003+
type: array
4004+
is_cspm_enabled:
4005+
description: When enabled, Datadog performs configuration checks across
4006+
your Google Cloud environment by continuously scanning every resource.
4007+
type: boolean
4008+
type: object
4009+
GCPSTSServiceAccountCreateRequest:
4010+
description: Data on your newly generated service account.
4011+
properties:
4012+
data:
4013+
$ref: '#/components/schemas/GCPSTSServiceAccountData'
4014+
type: object
4015+
GCPSTSServiceAccountData:
4016+
description: Additional metadata on your generated service account.
4017+
properties:
4018+
attributes:
4019+
$ref: '#/components/schemas/GCPSTSServiceAccountAttributes'
4020+
type:
4021+
$ref: '#/components/schemas/GCPServiceAccountType'
4022+
type: object
4023+
GCPSTSServiceAccountResponse:
4024+
description: The account creation response.
4025+
properties:
4026+
data:
4027+
$ref: '#/components/schemas/GCPSTSServiceAccount'
4028+
type: object
4029+
GCPSTSServiceAccountUpdateRequest:
4030+
description: Service account info.
4031+
properties:
4032+
data:
4033+
$ref: '#/components/schemas/GCPSTSServiceAccountUpdateRequestData'
4034+
type: object
4035+
GCPSTSServiceAccountUpdateRequestData:
4036+
description: Data on your service account.
4037+
properties:
4038+
attributes:
4039+
$ref: '#/components/schemas/GCPSTSServiceAccountAttributes'
4040+
id:
4041+
description: Your service account's unique ID.
4042+
example: d291291f-12c2-22g4-j290-123456678897
4043+
type: string
4044+
type:
4045+
$ref: '#/components/schemas/GCPServiceAccountType'
4046+
type: object
4047+
GCPSTSServiceAccountsResponse:
4048+
description: Object containing all your STS enabled accounts.
4049+
properties:
4050+
data:
4051+
description: Array of GCP STS enabled service accounts.
4052+
items:
4053+
$ref: '#/components/schemas/GCPSTSServiceAccount'
4054+
type: array
4055+
type: object
4056+
GCPServiceAccountMeta:
4057+
description: Additional information related to your service account.
4058+
properties:
4059+
accessible_projects:
4060+
description: The current list of projects accessible from your service account.
4061+
items:
4062+
description: List of GCP projects.
4063+
type: string
4064+
type: array
4065+
type: object
4066+
GCPServiceAccountType:
4067+
default: gcp_service_account
4068+
description: The type of account.
4069+
enum:
4070+
- gcp_service_account
4071+
example: gcp_service_account
4072+
type: string
4073+
x-enum-varnames:
4074+
- GCP_SERVICE_ACCOUNT
39324075
GetFindingResponse:
39334076
description: The expected response schema when getting a finding.
39344077
properties:
@@ -16844,6 +16987,154 @@ paths:
1684416987
x-unstable: '**Note**: This endpoint is in public beta.
1684516988

1684616989
If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
16990+
/api/v2/integration/gcp/accounts:
16991+
get:
16992+
description: List all GCP STS-enabled service accounts configured in your Datadog
16993+
account.
16994+
operationId: ListGCPSTSAccounts
16995+
responses:
16996+
'200':
16997+
content:
16998+
application/json:
16999+
schema:
17000+
$ref: '#/components/schemas/GCPSTSServiceAccountsResponse'
17001+
description: OK
17002+
'403':
17003+
$ref: '#/components/responses/NotAuthorizedResponse'
17004+
'404':
17005+
$ref: '#/components/responses/NotFoundResponse'
17006+
'429':
17007+
$ref: '#/components/responses/TooManyRequestsResponse'
17008+
summary: List all GCP STS-enabled service accounts
17009+
tags:
17010+
- GCP Integration
17011+
post:
17012+
description: Create a new entry within Datadog for your STS enabled service
17013+
account.
17014+
operationId: CreateGCPSTSAccount
17015+
requestBody:
17016+
content:
17017+
application/json:
17018+
schema:
17019+
$ref: '#/components/schemas/GCPSTSServiceAccountCreateRequest'
17020+
required: true
17021+
responses:
17022+
'201':
17023+
content:
17024+
application/json:
17025+
schema:
17026+
$ref: '#/components/schemas/GCPSTSServiceAccountResponse'
17027+
description: OK
17028+
'400':
17029+
$ref: '#/components/responses/BadRequestResponse'
17030+
'401':
17031+
$ref: '#/components/responses/UnauthorizedResponse'
17032+
'403':
17033+
$ref: '#/components/responses/NotAuthorizedResponse'
17034+
'409':
17035+
$ref: '#/components/responses/ConflictResponse'
17036+
'429':
17037+
$ref: '#/components/responses/TooManyRequestsResponse'
17038+
summary: Create a new entry for your service account
17039+
tags:
17040+
- GCP Integration
17041+
x-codegen-request-body-name: body
17042+
/api/v2/integration/gcp/accounts/{account_id}:
17043+
delete:
17044+
description: Delete an STS enabled GCP account from within Datadog.
17045+
operationId: DeleteGCPSTSAccount
17046+
parameters:
17047+
- $ref: '#/components/parameters/GCPSTSServiceAccountID'
17048+
responses:
17049+
'204':
17050+
description: No Content
17051+
'400':
17052+
$ref: '#/components/responses/BadRequestResponse'
17053+
'403':
17054+
$ref: '#/components/responses/NotAuthorizedResponse'
17055+
'429':
17056+
$ref: '#/components/responses/TooManyRequestsResponse'
17057+
summary: Delete an STS enabled GCP Account
17058+
tags:
17059+
- GCP Integration
17060+
patch:
17061+
description: Update an STS enabled service account.
17062+
operationId: UpdateGCPSTSAccount
17063+
parameters:
17064+
- $ref: '#/components/parameters/GCPSTSServiceAccountID'
17065+
requestBody:
17066+
content:
17067+
application/json:
17068+
schema:
17069+
$ref: '#/components/schemas/GCPSTSServiceAccountUpdateRequest'
17070+
required: true
17071+
responses:
17072+
'201':
17073+
content:
17074+
application/json:
17075+
schema:
17076+
$ref: '#/components/schemas/GCPSTSServiceAccountResponse'
17077+
description: OK
17078+
'400':
17079+
$ref: '#/components/responses/BadRequestResponse'
17080+
'403':
17081+
$ref: '#/components/responses/NotAuthorizedResponse'
17082+
'404':
17083+
$ref: '#/components/responses/NotFoundResponse'
17084+
'429':
17085+
$ref: '#/components/responses/TooManyRequestsResponse'
17086+
summary: Update STS Service Account
17087+
tags:
17088+
- GCP Integration
17089+
x-codegen-request-body-name: body
17090+
/api/v2/integration/gcp/sts_delegate:
17091+
get:
17092+
description: List your Datadog-GCP STS delegate account configured in your Datadog
17093+
account.
17094+
operationId: GetGCPSTSDelegate
17095+
responses:
17096+
'200':
17097+
content:
17098+
application/json:
17099+
schema:
17100+
$ref: '#/components/schemas/GCPSTSDelegateAccountResponse'
17101+
description: OK
17102+
'403':
17103+
$ref: '#/components/responses/NotAuthorizedResponse'
17104+
'429':
17105+
$ref: '#/components/responses/TooManyRequestsResponse'
17106+
summary: List delegate account
17107+
tags:
17108+
- GCP Integration
17109+
x-codegen-request-body-name: body
17110+
post:
17111+
description: Create a Datadog GCP principal.
17112+
operationId: MakeGCPSTSDelegate
17113+
requestBody:
17114+
content:
17115+
application/json:
17116+
schema:
17117+
example: {}
17118+
type: object
17119+
description: Create a delegate service account within Datadog.
17120+
required: false
17121+
responses:
17122+
'200':
17123+
content:
17124+
application/json:
17125+
schema:
17126+
$ref: '#/components/schemas/GCPSTSDelegateAccountResponse'
17127+
description: OK
17128+
'403':
17129+
$ref: '#/components/responses/NotAuthorizedResponse'
17130+
'409':
17131+
$ref: '#/components/responses/ConflictResponse'
17132+
'429':
17133+
$ref: '#/components/responses/TooManyRequestsResponse'
17134+
summary: Create a Datadog GCP principal
17135+
tags:
17136+
- GCP Integration
17137+
x-codegen-request-body-name: body
1684717138
/api/v2/integration/opsgenie/services:
1684817139
get:
1684917140
description: Get a list of all services from the Datadog Opsgenie integration.
@@ -24352,6 +24643,12 @@ tags:
2435224643
- description: Configure your Datadog Fastly integration directly through the Datadog
2435324644
API.
2435424645
name: Fastly Integration
24646+
- description: 'Configure your Datadog-Google Cloud Platform (GCP) integration directly
24647+
24648+
through the Datadog API. Read more about the [Datadog-Google Cloud Platform integration](https://docs.datadoghq.com/integrations/google_cloud_platform).'
24649+
externalDocs:
24650+
url: https://docs.datadoghq.com/integrations/google_cloud_platform
24651+
name: GCP Integration
2435524652
- description: 'The IP allowlist API is used to manage the IP addresses that
2435624653

2435724654
can access the Datadog API and web UI. It does not block

docs/datadog_api_client.v2.api.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,13 @@ fastly\_integration\_api
7171
:members:
7272
:show-inheritance:
7373

74+
gcp\_integration\_api
75+
---------------------
76+
77+
.. automodule:: datadog_api_client.v2.api.gcp_integration_api
78+
:members:
79+
:show-inheritance:
80+
7481
incident\_services\_api
7582
-----------------------
7683

0 commit comments

Comments
 (0)