Skip to content
Merged
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
43 changes: 43 additions & 0 deletions config/_default/menus/api.en.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10218,6 +10218,49 @@ menu:
- GetDomainAllowlist
unstable: []
order: 1
- name: Entity Integration Configs
url: /api/latest/entity-integration-configs/
identifier: entity-integration-configs
generated: true
- name: Create or update entity integration configuration
url: '#create-or-update-entity-integration-configuration'
identifier: entity-integration-configs-create-or-update-entity-integration-configuration
parent: entity-integration-configs
generated: true
params:
versions:
- v2
operationids:
- UpdateEntityIntegrationConfig
unstable:
- v2
order: 2
- name: Get an entity integration configuration
url: '#get-an-entity-integration-configuration'
identifier: entity-integration-configs-get-an-entity-integration-configuration
parent: entity-integration-configs
generated: true
params:
versions:
- v2
operationids:
- GetEntityIntegrationConfig
unstable:
- v2
order: 1
- name: Delete an entity integration configuration
url: '#delete-an-entity-integration-configuration'
identifier: entity-integration-configs-delete-an-entity-integration-configuration
parent: entity-integration-configs
generated: true
params:
versions:
- v2
operationids:
- DeleteEntityIntegrationConfig
unstable:
- v2
order: 3
- name: Entity Risk Scores
url: /api/latest/entity-risk-scores/
identifier: entity-risk-scores
Expand Down
3 changes: 3 additions & 0 deletions content/en/api/latest/entity-integration-configs/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
title: Entity Integration Configs
---
4 changes: 4 additions & 0 deletions content/en/api/v2/entity-integration-configs/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
title: Entity Integration Configs
headless: true
---
241 changes: 241 additions & 0 deletions content/en/api/v2/entity-integration-configs/examples.json

Large diffs are not rendered by default.

284 changes: 284 additions & 0 deletions data/api/v2/full_spec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -435,6 +435,14 @@ components:
schema:
example: "service:myservice"
type: string
EntityIntegrationConfigID:
description: The identifier of the integration whose configuration is being managed. Supported values are `github`, `jira`, and `pagerduty`.
in: path
name: integration_id
required: true
schema:
example: github
type: string
FastlyAccountID:
description: Fastly Account id.
in: path
Expand Down Expand Up @@ -27066,6 +27074,103 @@ components:
description: Entity.
type: string
type: object
EntityIntegrationConfigAttributes:
description: The organization ID, integration identifier, and integration-specific configuration payload for an entity integration configuration.
properties:
config:
$ref: "#/components/schemas/EntityIntegrationConfigPayload"
integration_id:
description: The identifier of the integration this configuration applies to (for example, `github`, `jira`, or `pagerduty`).
example: github
type: string
org_id:
description: The Datadog organization identifier that owns this configuration.
example: 1234
format: int64
type: integer
required:
- org_id
- integration_id
- config
type: object
EntityIntegrationConfigData:
description: JSON:API resource object for an entity integration configuration.
properties:
attributes:
$ref: "#/components/schemas/EntityIntegrationConfigAttributes"
id:
description: Unique identifier of the entity integration configuration.
example: 01HJABCD12345678ABCDEFGHIJ
type: string
type:
$ref: "#/components/schemas/EntityIntegrationConfigType"
required:
- id
- type
- attributes
type: object
EntityIntegrationConfigPayload:
additionalProperties: {}
description: Integration-specific configuration payload. The shape of this object depends on the integration identified by the path parameter. For `github`, the object must contain an `enabled_repos` array. For `jira`, it must contain an `enabled_projects` array. For `pagerduty`, it must contain an `accounts` array.
example:
enabled_repos:
- github_org_name: myorg
hostname: github.com
repo_name: myrepo
type: object
EntityIntegrationConfigRequest:
description: Request body used to create or replace the configuration for a given integration.
properties:
data:
$ref: "#/components/schemas/EntityIntegrationConfigRequestData"
required:
- data
type: object
EntityIntegrationConfigRequestAttributes:
description: Attributes used to create or update an entity integration configuration.
properties:
config:
$ref: "#/components/schemas/EntityIntegrationConfigPayload"
required:
- config
type: object
EntityIntegrationConfigRequestData:
description: JSON:API resource object used in a request to create or update an entity integration configuration.
properties:
attributes:
$ref: "#/components/schemas/EntityIntegrationConfigRequestAttributes"
type:
$ref: "#/components/schemas/EntityIntegrationConfigRequestType"
required:
- type
- attributes
type: object
EntityIntegrationConfigRequestType:
default: entity_integration_config_requests
description: JSON:API resource type for the entity integration configuration create or update request. Always `entity_integration_config_requests`.
enum:
- entity_integration_config_requests
example: entity_integration_config_requests
type: string
x-enum-varnames:
- ENTITY_INTEGRATION_CONFIG_REQUESTS
EntityIntegrationConfigResponse:
description: JSON:API document containing a single entity integration configuration resource.
properties:
data:
$ref: "#/components/schemas/EntityIntegrationConfigData"
required:
- data
type: object
EntityIntegrationConfigType:
default: entity_integration_configs
description: JSON:API resource type for an entity integration configuration. Always `entity_integration_configs`.
enum:
- entity_integration_configs
example: entity_integration_configs
type: string
x-enum-varnames:
- ENTITY_INTEGRATION_CONFIGS
EntityMeta:
description: Entity metadata.
properties:
Expand Down Expand Up @@ -115708,6 +115813,183 @@ paths:
x-unstable: |-
**Note**: This endpoint is in public beta and is subject to change.
If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
/api/v2/idp/entity_integrations/{integration_id}:
delete:
description: Delete the configuration stored for a given integration in the caller's organization.
operationId: DeleteEntityIntegrationConfig
parameters:
- $ref: "#/components/parameters/EntityIntegrationConfigID"
responses:
"204":
description: No Content
"400":
content:
application/json:
schema:
$ref: "#/components/schemas/JSONAPIErrorResponse"
description: Bad Request
"403":
$ref: "#/components/responses/NotAuthorizedResponse"
"404":
content:
application/json:
schema:
$ref: "#/components/schemas/JSONAPIErrorResponse"
description: Not Found
"429":
$ref: "#/components/responses/TooManyRequestsResponse"
summary: Delete an entity integration configuration
tags:
- Entity Integration Configs
x-menu-order: 3
x-permission:
operator: OR
permissions:
- manage_integrations
x-unstable: |-
**Note**: This endpoint is in preview and is subject to change.
If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
get:
description: Retrieve the configuration currently stored for a given integration in the caller's organization.
operationId: GetEntityIntegrationConfig
parameters:
- $ref: "#/components/parameters/EntityIntegrationConfigID"
responses:
"200":
content:
application/json:
example:
data:
attributes:
config:
enabled_repos:
- github_org_name: myorg
hostname: github.com
repo_name: myrepo
integration_id: github
org_id: 1234
id: 01HJABCD12345678ABCDEFGHIJ
type: entity_integration_configs
schema:
$ref: "#/components/schemas/EntityIntegrationConfigResponse"
description: OK
"400":
content:
application/json:
schema:
$ref: "#/components/schemas/JSONAPIErrorResponse"
description: Bad Request
"403":
$ref: "#/components/responses/NotAuthorizedResponse"
"404":
content:
application/json:
schema:
$ref: "#/components/schemas/JSONAPIErrorResponse"
description: Not Found
"429":
$ref: "#/components/responses/TooManyRequestsResponse"
summary: Get an entity integration configuration
tags:
- Entity Integration Configs
x-menu-order: 1
x-permission:
operator: OR
permissions:
- integrations_read
x-unstable: |-
**Note**: This endpoint is in preview and is subject to change.
If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
put:
description: |-
Create or replace the configuration for a given integration in the caller's organization. The shape of `data.attributes.config` depends on the integration:

- For `github`: `config` must contain an `enabled_repos` array of objects with `hostname`, `github_org_name`, and `repo_name`.
- For `jira`: `config` must contain an `enabled_projects` array of objects with `hostname`, `account_id`, and `project_key`.
- For `pagerduty`: `config` must contain an `accounts` array of objects with a required `enabled` boolean and an optional `subdomain` string.
operationId: UpdateEntityIntegrationConfig
parameters:
- $ref: "#/components/parameters/EntityIntegrationConfigID"
requestBody:
content:
application/json:
examples:
default:
summary: GitHub integration configuration
value:
data:
attributes:
config:
enabled_repos:
- github_org_name: myorg
hostname: github.com
repo_name: myrepo
type: entity_integration_config_requests
jira:
summary: Jira integration configuration
value:
data:
attributes:
config:
enabled_projects:
- account_id: "123456789"
hostname: mycompany.atlassian.net
project_key: AAA
type: entity_integration_config_requests
pagerduty:
summary: PagerDuty integration configuration
value:
data:
attributes:
config:
accounts:
- enabled: true
subdomain: mycompany
type: entity_integration_config_requests
schema:
$ref: "#/components/schemas/EntityIntegrationConfigRequest"
required: true
responses:
"200":
content:
application/json:
example:
data:
attributes:
config:
enabled_repos:
- github_org_name: myorg
hostname: github.com
repo_name: myrepo
integration_id: github
org_id: 1234
id: 01HJABCD12345678ABCDEFGHIJ
type: entity_integration_configs
schema:
$ref: "#/components/schemas/EntityIntegrationConfigResponse"
description: OK
"400":
content:
application/json:
schema:
$ref: "#/components/schemas/JSONAPIErrorResponse"
description: Bad Request
"403":
$ref: "#/components/responses/NotAuthorizedResponse"
"429":
$ref: "#/components/responses/TooManyRequestsResponse"
summary: Create or update entity integration configuration
tags:
- Entity Integration Configs
x-codegen-request-body-name: body
x-menu-order: 2
x-permission:
operator: OR
permissions:
- integrations_read
x-unstable: |-
**Note**: This endpoint is in preview and is subject to change.
If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
/api/v2/incidents:
get:
description: >-
Expand Down Expand Up @@ -164758,6 +165040,8 @@ tags:
scopes from alerting. Downtime settings, which can be scheduled with start and
end times, prevent all alerting related to specified Datadog tags.
name: Downtimes
- description: Manage per-integration configurations for the Internal Developer Portal (IDP). These configurations control which external resources (for example, GitHub repositories, Jira projects, or PagerDuty services) are synced as entities into the Software Catalog.
name: Entity Integration Configs
- description: Retrieves security risk scores for entities in your organization.
name: Entity Risk Scores
- description: View and manage issues within Error Tracking. See the [Error Tracking page](https://docs.datadoghq.com/error_tracking/) for more information.
Expand Down
14 changes: 14 additions & 0 deletions data/api/v2/translate_actions.json
Original file line number Diff line number Diff line change
Expand Up @@ -1780,6 +1780,20 @@
"request_description": "",
"request_schema_description": "Request payload for creating or updating a HAMR organization connection."
},
"DeleteEntityIntegrationConfig": {
"description": "Delete the configuration stored for a given integration in the caller's organization.",
"summary": "Delete an entity integration configuration"
},
"GetEntityIntegrationConfig": {
"description": "Retrieve the configuration currently stored for a given integration in the caller's organization.",
"summary": "Get an entity integration configuration"
},
"UpdateEntityIntegrationConfig": {
"description": "Create or replace the configuration for a given integration in the caller's organization. The shape of `data.attributes.config` depends on the integration:\n\n- For `github`: `config` must contain an `enabled_repos` array of objects with `hostname`, `github_org_name`, and `repo_name`.\n- For `jira`: `config` must contain an `enabled_projects` array of objects with `hostname`, `account_id`, and `project_key`.\n- For `pagerduty`: `config` must contain an `accounts` array of objects with a required `enabled` boolean and an optional `subdomain` string.",
"summary": "Create or update entity integration configuration",
"request_description": "",
"request_schema_description": "Request body used to create or replace the configuration for a given integration."
},
"ListIncidents": {
"description": "Get all incidents for the user's organization.",
"summary": "Get a list of incidents"
Expand Down
Loading
Loading