GET https://api.ap1.datadoghq.com/api/v2/scorecard/scores/{aggregation}https://api.ap2.datadoghq.com/api/v2/scorecard/scores/{aggregation}https://api.datadoghq.eu/api/v2/scorecard/scores/{aggregation}https://api.ddog-gov.com/api/v2/scorecard/scores/{aggregation}https://api.us2.ddog-gov.com/api/v2/scorecard/scores/{aggregation}https://api.uk1.datadoghq.com/api/v2/scorecard/scores/{aggregation}https://api.datadoghq.com/api/v2/scorecard/scores/{aggregation}https://api.us3.datadoghq.com/api/v2/scorecard/scores/{aggregation}https://api.us5.datadoghq.com/api/v2/scorecard/scores/{aggregation}

개요

각 집계 유형에 대한 Scorecard 점수 목록을 점수 분석과 함께 반환합니다.

OAuth apps require the apm_service_catalog_read authorization scope to access this endpoint.

인수

경로 파라미터

이름

유형

설명

aggregation [required]

string

The type of scores being requested.

쿼리 문자열

이름

유형

설명

filter[rule][id]

string

Filter scores by rule ID(s), comma-separated.

filter[rule][name]

string

Filter scores by rule name.

filter[rule][level]

string

Filter scores by rule level(s), comma-separated.

filter[rule][scorecard_id]

string

Filter scores by scorecard ID(s), comma-separated.

filter[rule][is_custom]

boolean

Filter scores to show only custom rules.

filter[rule][is_enabled]

boolean

Filter scores to show only enabled rules.

sort

string

Sort scores by field. Use a hyphen prefix for descending order. Options: score, numerator, denominator, total_pass, total_fail, total_skip, total_no_data.

page[offset]

integer

Offset for pagination.

page[limit]

integer

Number of scores to return. Max is 1000.

응답

OK

A list of scorecard scores for a given aggregation type.

Expand All

항목

유형

설명

data

[object]

Array of score objects.

attributes

object

Attributes of a scorecard score.

aggregation

enum

Dimension to group scores by. Allowed enum values: by-entity,by-rule,by-scorecard,by-team,by-kind

denominator

int64

The denominator used to compute the score ratio.

level

int64

The maturity level of the associated rule.

numerator

int64

The numerator used to compute the score ratio.

score

double

The computed score ratio (numerator/denominator), from 0 to 1.

total_entities

int64

The total number of entities evaluated.

total_fail

int64

The number of rules that failed.

total_no_data

int64

The number of rules with no data.

total_pass

int64

The number of rules that passed.

total_skip

int64

The number of rules that were skipped.

id [required]

string

The ID of the entity or resource being scored.

relationships

object

Relationships for a scorecard score, depending on the aggregation type.

entity

object

A relationship item for a score.

data

object

A relationship data object for a score.

id [required]

string

The ID of the related resource.

type [required]

string

The type of the related resource.

rule

object

A relationship item for a score.

data

object

A relationship data object for a score.

id [required]

string

The ID of the related resource.

type [required]

string

The type of the related resource.

scorecard

object

A relationship item for a score.

data

object

A relationship data object for a score.

id [required]

string

The ID of the related resource.

type [required]

string

The type of the related resource.

service

object

A relationship item for a score.

data

object

A relationship data object for a score.

id [required]

string

The ID of the related resource.

type [required]

string

The type of the related resource.

team

object

A relationship item for a score.

data

object

A relationship data object for a score.

id [required]

string

The ID of the related resource.

type [required]

string

The type of the related resource.

type [required]

enum

The JSON:API resource type. Allowed enum values: score

default: score

links

object

Links attributes.

next

string

Link for the next set of rules.

meta

object

Pagination metadata for scores.

count

int64

The number of results returned in this page.

limit

int64

The page limit.

offset

int64

The page offset.

total

int64

The total number of results.

{
  "data": [
    {
      "attributes": {
        "aggregation": "by-entity",
        "denominator": "integer",
        "level": "integer",
        "numerator": "integer",
        "score": "number",
        "total_entities": "integer",
        "total_fail": "integer",
        "total_no_data": "integer",
        "total_pass": "integer",
        "total_skip": "integer"
      },
      "id": "",
      "relationships": {
        "entity": {
          "data": {
            "id": "",
            "type": ""
          }
        },
        "rule": {
          "data": {
            "id": "",
            "type": ""
          }
        },
        "scorecard": {
          "data": {
            "id": "",
            "type": ""
          }
        },
        "service": {
          "data": {
            "id": "",
            "type": ""
          }
        },
        "team": {
          "data": {
            "id": "",
            "type": ""
          }
        }
      },
      "type": "score"
    }
  ],
  "links": {
    "next": "/api/v2/scorecard/rules?page%5Blimit%5D=2\u0026page%5Boffset%5D=2\u0026page%5Bsize%5D=2"
  },
  "meta": {
    "count": "integer",
    "limit": "integer",
    "offset": "integer",
    "total": "integer"
  }
}

Bad Request

API error response.

Expand All

항목

유형

설명

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

Forbidden

API error response.

Expand All

항목

유형

설명

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

Too many requests

API error response.

Expand All

항목

유형

설명

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

코드 예시

                  # Path parameters
export aggregation="by-entity"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

# Curl command
curl -X GET "https://api.ap1.datadoghq.com"https://api.ap2.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.us2.ddog-gov.com"https://api.uk1.datadoghq.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/scorecard/scores/${aggregation}" \ -H "Accept: application/json" \ -H "Authorization: Bearer ${DD_BEARER_TOKEN}"
"""
List all scores returns "OK" response
"""

from os import environ
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.scorecards_api import ScorecardsApi
from datadog_api_client.v2.model.scorecard_scores_aggregation import ScorecardScoresAggregation

configuration = Configuration()
configuration.access_token = environ["DD_BEARER_TOKEN"]
with ApiClient(configuration) as api_client:
    api_instance = ScorecardsApi(api_client)
    response = api_instance.list_scorecard_scores(
        aggregation=ScorecardScoresAggregation.BY_ENTITY,
    )

    print(response)

Instructions

First install the library and its dependencies and then save the example to example.py and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"
# List all scores returns "OK" response

require "datadog_api_client"
DatadogAPIClient.configure do |config|
  config.access_token = ENV["DD_BEARER_TOKEN"]
end
api_instance = DatadogAPIClient::V2::ScorecardsAPI.new
p api_instance.list_scorecard_scores(ScorecardScoresAggregation::BY_ENTITY)

Instructions

First install the library and its dependencies and then save the example to example.rb and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"
// List all scores returns "OK" response

package main

import (
	"context"
	"encoding/json"
	"fmt"
	"os"

	"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
	"github.com/DataDog/datadog-api-client-go/v2/api/datadogV2"
)

func main() {
	ctx := datadog.NewDefaultContext(context.Background())
	ctx = context.WithValue(ctx, datadog.ContextAccessToken, os.Getenv("DD_BEARER_TOKEN"))
	configuration := datadog.NewConfiguration()
	apiClient := datadog.NewAPIClient(configuration)
	api := datadogV2.NewScorecardsApi(apiClient)
	resp, r, err := api.ListScorecardScores(ctx, datadogV2.SCORECARDSCORESAGGREGATION_BY_ENTITY, *datadogV2.NewListScorecardScoresOptionalParameters())

	if err != nil {
		fmt.Fprintf(os.Stderr, "Error when calling `ScorecardsApi.ListScorecardScores`: %v\n", err)
		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
	}

	responseContent, _ := json.MarshalIndent(resp, "", "  ")
	fmt.Fprintf(os.Stdout, "Response from `ScorecardsApi.ListScorecardScores`:\n%s\n", responseContent)
}

Instructions

First install the library and its dependencies and then save the example to main.go and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"
// List all scores returns "OK" response

import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.ScorecardsApi;
import com.datadog.api.client.v2.model.ListScorecardScoresResponse;
import com.datadog.api.client.v2.model.ScorecardScoresAggregation;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = ApiClient.getDefaultApiClient();
    defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
    ScorecardsApi apiInstance = new ScorecardsApi(defaultClient);

    try {
      ListScorecardScoresResponse result =
          apiInstance.listScorecardScores(ScorecardScoresAggregation.BY_ENTITY);
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling ScorecardsApi#listScorecardScores");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

Instructions

First install the library and its dependencies and then save the example to Example.java and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"
// List all scores returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_scorecards::ListScorecardScoresOptionalParams;
use datadog_api_client::datadogV2::api_scorecards::ScorecardsAPI;
use datadog_api_client::datadogV2::model::ScorecardScoresAggregation;

#[tokio::main]
async fn main() {
    let configuration = datadog::Configuration::new();
    let api = ScorecardsAPI::with_config(configuration);
    let resp = api
        .list_scorecard_scores(
            ScorecardScoresAggregation::BY_ENTITY,
            ListScorecardScoresOptionalParams::default(),
        )
        .await;
    if let Ok(value) = resp {
        println!("{:#?}", value);
    } else {
        println!("{:#?}", resp.unwrap_err());
    }
}

Instructions

First install the library and its dependencies and then save the example to src/main.rs and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo run
/**
 * List all scores returns "OK" response
 */

import { client, v2 } from "@datadog/datadog-api-client";

const configuration = client.createConfiguration({
  authMethods: {
    AuthZ: {
      accessToken: process.env.DD_BEARER_TOKEN as string,
    },
  },
});
const apiInstance = new v2.ScorecardsApi(configuration);

const params: v2.ScorecardsApiListScorecardScoresRequest = {
  aggregation: "by-entity",
};

apiInstance
  .listScorecardScores(params)
  .then((data: v2.ListScorecardScoresResponse) => {
    console.log(
      "API called successfully. Returned data: " + JSON.stringify(data)
    );
  })
  .catch((error: any) => console.error(error));

Instructions

First install the library and its dependencies and then save the example to example.ts and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"