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
4 changes: 2 additions & 2 deletions .generated-info
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"spec_repo_commit": "62a19e4",
"generated": "2025-08-27 15:01:11.584"
"spec_repo_commit": "6d9663b",
"generated": "2025-08-27 16:37:55.902"
}
97 changes: 97 additions & 0 deletions .generator/schemas/v2/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14485,6 +14485,10 @@ components:
description: Entity definition in raw JSON or YAML representation.
example: "apiVersion: v3\nkind: service\nmetadata:\n name: myservice\n"
type: string
EntityReference:
description: The unique reference for an IDP entity.
example: service:my-service
type: string
EntityRelationships:
description: Entity relationships.
properties:
Expand Down Expand Up @@ -34444,6 +34448,8 @@ components:
description: If enabled, the rule is calculated as part of the score.
example: true
type: boolean
level:
$ref: '#/components/schemas/RuleLevel'
modified_at:
description: Time of the last rule outcome modification.
format: date-time
Expand All @@ -34464,6 +34470,13 @@ components:
description: The unique ID for a scorecard rule.
example: q8MQxk8TCqrHnWkx
type: string
RuleLevel:
description: The maturity level of the rule (1, 2, or 3).
example: 2
format: int32
maximum: 3
minimum: 1
type: integer
RuleName:
description: Name of the notification rule.
example: Rule 1
Expand Down Expand Up @@ -43835,6 +43848,57 @@ components:
id:
$ref: '#/components/schemas/ApiID'
type: object
UpdateOutcomesAsyncAttributes:
description: The JSON:API attributes for a batched set of scorecard outcomes.
properties:
results:
description: Set of scorecard outcomes to update asynchronously.
items:
$ref: '#/components/schemas/UpdateOutcomesAsyncRequestItem'
type: array
type: object
UpdateOutcomesAsyncRequest:
description: Scorecard outcomes batch request.
properties:
data:
$ref: '#/components/schemas/UpdateOutcomesAsyncRequestData'
type: object
UpdateOutcomesAsyncRequestData:
description: Scorecard outcomes batch request data.
properties:
attributes:
$ref: '#/components/schemas/UpdateOutcomesAsyncAttributes'
type:
$ref: '#/components/schemas/UpdateOutcomesAsyncType'
type: object
UpdateOutcomesAsyncRequestItem:
description: Scorecard outcome for a single entity and rule.
properties:
entity_reference:
$ref: '#/components/schemas/EntityReference'
remarks:
description: Any remarks regarding the scorecard rule's evaluation. Supports
HTML hyperlinks.
example: 'See: <a href="https://app.datadoghq.com/services">Services</a>'
type: string
rule_id:
$ref: '#/components/schemas/RuleId'
state:
$ref: '#/components/schemas/State'
required:
- rule_id
- entity_reference
- state
type: object
UpdateOutcomesAsyncType:
default: batched-outcome
description: The JSON:API type for scorecard outcomes.
enum:
- batched-outcome
example: batched-outcome
type: string
x-enum-varnames:
- BATCHED_OUTCOME
UpdateResourceEvaluationFiltersRequest:
description: Request object to update a resource filter.
properties:
Expand Down Expand Up @@ -61882,6 +61946,39 @@ paths:
resultsPath: data
x-unstable: '**Note**: This endpoint is in public beta.

If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
post:
description: Updates multiple scorecard rule outcomes in a single batched request.
operationId: UpdateScorecardOutcomesAsync
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateOutcomesAsyncRequest'
description: Set of scorecard outcomes.
required: true
responses:
'202':
description: Accepted
'400':
$ref: '#/components/responses/BadRequestResponse'
'403':
$ref: '#/components/responses/ForbiddenResponse'
'409':
$ref: '#/components/responses/ConflictResponse'
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
security:
- apiKeyAuth: []
appKeyAuth: []
- AuthZ:
- apm_service_catalog_write
summary: Update Scorecard outcomes asynchronously
tags:
- Service Scorecards
x-codegen-request-body-name: body
x-unstable: '**Note**: This endpoint is in public beta.

If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
/api/v2/scorecard/outcomes/batch:
post:
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
"2025-08-26T15:48:59.496Z"
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
{
"log": {
"_recordingName": "Service Scorecards/Create a new rule returns \"Bad Request\" response",
"creator": {
"comment": "persister:fs",
"name": "Polly.JS",
"version": "6.0.5"
},
"entries": [
{
"_id": "b2e95b97872e2f96cb33d4f7200dd3ef",
"_order": 0,
"cache": {},
"request": {
"bodySize": 113,
"cookies": [],
"headers": [
{
"_fromType": "array",
"name": "accept",
"value": "application/json"
},
{
"_fromType": "array",
"name": "content-type",
"value": "application/json"
}
],
"headersSize": 568,
"httpVersion": "HTTP/1.1",
"method": "POST",
"postData": {
"mimeType": "application/json",
"params": [],
"text": "{\"data\":{\"attributes\":{\"enabled\":true,\"level\":2,\"name\":\"Team Defined\",\"scorecard_id\":\"NOT.FOUND\"},\"type\":\"rule\"}}"
},
"queryString": [],
"url": "https://api.datadoghq.com/api/v2/scorecard/rules"
},
"response": {
"bodySize": 113,
"content": {
"mimeType": "application/vnd.api+json",
"size": 113,
"text": "{\"errors\":[{\"status\":\"400\",\"title\":\"Bad Request\",\"detail\":\"attribute \\\"scorecard_id\\\" failed scorecard lookup\"}]}"
},
"cookies": [],
"headers": [
{
"name": "content-type",
"value": "application/vnd.api+json"
}
],
"headersSize": 525,
"httpVersion": "HTTP/1.1",
"redirectURL": "",
"status": 400,
"statusText": "Bad Request"
},
"startedDateTime": "2025-08-26T15:49:00.140Z",
"time": 176
}
],
"pages": [],
"version": "1.2"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
"2025-08-26T14:46:17.790Z"
Original file line number Diff line number Diff line change
@@ -0,0 +1,157 @@
{
"log": {
"_recordingName": "Service Scorecards/Update Scorecard outcomes asynchronously returns \"Accepted\" response",
"creator": {
"comment": "persister:fs",
"name": "Polly.JS",
"version": "6.0.5"
},
"entries": [
{
"_id": "1cc039d39eb6a261af31b4dda78ab025",
"_order": 0,
"cache": {},
"request": {
"bodySize": 216,
"cookies": [],
"headers": [
{
"_fromType": "array",
"name": "accept",
"value": "application/json"
},
{
"_fromType": "array",
"name": "content-type",
"value": "application/json"
}
],
"headersSize": 569,
"httpVersion": "HTTP/1.1",
"method": "POST",
"postData": {
"mimeType": "application/json",
"params": [],
"text": "{\"data\":{\"attributes\":{\"enabled\":true,\"name\":\"Test-Update_Scorecard_outcomes_asynchronously_returns_Accepted_response-1756219577\",\"owner\":\"Datadog\",\"scorecard_name\":\"OpenAPI Spec Test Best Practices\"},\"type\":\"rule\"}}"
},
"queryString": [],
"url": "https://api.datadoghq.com/api/v2/scorecard/rules"
},
"response": {
"bodySize": 483,
"content": {
"mimeType": "application/vnd.api+json",
"size": 483,
"text": "{\"data\":{\"id\":\"5e3dexz6x_4f_4pa\",\"type\":\"rule\",\"attributes\":{\"category\":\"OpenAPI Spec Test Best Practices\",\"created_at\":\"2025-08-26T14:46:18.889883535Z\",\"custom\":true,\"enabled\":true,\"level\":3,\"modified_at\":\"2025-08-26T14:46:18.889883535Z\",\"name\":\"Test-Update_Scorecard_outcomes_asynchronously_returns_Accepted_response-1756219577\",\"owner\":\"Datadog\",\"scorecard_name\":\"OpenAPI Spec Test Best Practices\"},\"relationships\":{\"scorecard\":{\"data\":{\"id\":\"qsxpoYRhU_yz\",\"type\":\"scorecard\"}}}}}"
},
"cookies": [],
"headers": [
{
"name": "content-type",
"value": "application/vnd.api+json"
}
],
"headersSize": 525,
"httpVersion": "HTTP/1.1",
"redirectURL": "",
"status": 201,
"statusText": "Created"
},
"startedDateTime": "2025-08-26T14:46:18.712Z",
"time": 208
},
{
"_id": "faaea36ab63f01dc893083a9dd852044",
"_order": 0,
"cache": {},
"request": {
"bodySize": 225,
"cookies": [],
"headers": [
{
"_fromType": "array",
"name": "accept",
"value": "*/*"
},
{
"_fromType": "array",
"name": "content-type",
"value": "application/json"
}
],
"headersSize": 568,
"httpVersion": "HTTP/1.1",
"method": "POST",
"postData": {
"mimeType": "application/json",
"params": [],
"text": "{\"data\":{\"attributes\":{\"results\":[{\"entity_reference\":\"service:my-service\",\"remarks\":\"See: <a href=\\\"https://app.datadoghq.com/services\\\">Services</a>\",\"rule_id\":\"5e3dexz6x_4f_4pa\",\"state\":\"pass\"}]},\"type\":\"batched-outcome\"}}"
},
"queryString": [],
"url": "https://api.datadoghq.com/api/v2/scorecard/outcomes"
},
"response": {
"bodySize": 90,
"content": {
"mimeType": "application/vnd.api+json",
"size": 90,
"text": "{\"data\":{\"id\":\"4iexte5r8prsrlrtzzxpy\",\"type\":\"async-request\"},\"meta\":{\"total_received\":1}}"
},
"cookies": [],
"headers": [
{
"name": "content-type",
"value": "application/vnd.api+json"
}
],
"headersSize": 524,
"httpVersion": "HTTP/1.1",
"redirectURL": "",
"status": 202,
"statusText": "Accepted"
},
"startedDateTime": "2025-08-26T14:46:18.939Z",
"time": 78
},
{
"_id": "80d13e081f26b75c5802110b933738bc",
"_order": 0,
"cache": {},
"request": {
"bodySize": 0,
"cookies": [],
"headers": [
{
"_fromType": "array",
"name": "accept",
"value": "*/*"
}
],
"headersSize": 522,
"httpVersion": "HTTP/1.1",
"method": "DELETE",
"queryString": [],
"url": "https://api.datadoghq.com/api/v2/scorecard/rules/5e3dexz6x_4f_4pa"
},
"response": {
"bodySize": 0,
"content": {
"mimeType": "text/plain",
"size": 0
},
"cookies": [],
"headers": [],
"headersSize": 464,
"httpVersion": "HTTP/1.1",
"redirectURL": "",
"status": 204,
"statusText": "No Content"
},
"startedDateTime": "2025-08-26T14:46:19.023Z",
"time": 511
}
],
"pages": [],
"version": "1.2"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
"2025-08-26T14:46:19.541Z"
Loading