Kong Scorecards API

A scorecard helps you evaluate services based on its criteria. Scorecards help you detect issues, like whether there are services in the catalog that don't have an on-call engineer assigned, or if you have GitHub repositories with stale pull requests that aren't getting reviewed or closed. From the scorecard, you can view details on either a per-service or per-criteria basis. Learn more about scorecards by visiting our [documentation](https://developer.konghq.com/service-catalog/scorecards/).

OpenAPI Specification

kong-scorecards-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  contact:
    email: support@konghq.com
    name: Kong Inc
    url: https://konghq.com
  description: 'OpenAPI 3.0 spec for Kong Gateway''s Admin API.


    You can learn more about Kong Gateway at [developer.konghq.com](https://developer.konghq.com).

    Give Kong a star at the [Kong/kong](https://github.com/kong/kong) repository.'
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  title: Kong Enterprise Admin ACLs Scorecards API
  version: 3.14.0
servers:
- description: Default Admin API URL
  url: '{protocol}://{hostname}:{port}{path}'
  variables:
    hostname:
      default: localhost
      description: Hostname for Kong's Admin API
    path:
      default: /
      description: Base path for Kong's Admin API
    port:
      default: '8001'
      description: Port for Kong's Admin API
    protocol:
      default: http
      description: Protocol for requests to Kong's Admin API
      enum:
      - http
      - https
security:
- adminToken: []
tags:
- name: Scorecards
  description: 'A scorecard helps you evaluate services based on its criteria.

    Scorecards help you detect issues, like whether there are services in the catalog that don''t have an on-call engineer assigned, or if you have GitHub repositories with stale pull requests that aren''t getting reviewed or closed.

    From the scorecard, you can view details on either a per-service or per-criteria basis.

    Learn more about scorecards by visiting our [documentation](https://developer.konghq.com/service-catalog/scorecards/).

    '
paths:
  /v1/catalog-services/{id}/scorecards:
    parameters:
    - name: id
      in: path
      description: The `id` of the service.
      required: true
      schema:
        type: string
        example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7
    get:
      operationId: list-catalog-service-scorecards
      summary: List Catalog Service Scorecards
      description: Returns a paginated collection of scorecards targeting the given service.
      parameters:
      - $ref: '#/components/parameters/PageSize'
      - $ref: '#/components/parameters/PageNumber'
      - $ref: '#/components/parameters/ScorecardFilter'
      - $ref: '#/components/parameters/ScorecardSort'
      responses:
        '200':
          $ref: '#/components/responses/ListCatalogServiceScorecardsResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Scorecards
  /v1/catalog-services/{serviceId}/scorecards/{scorecardId}:
    parameters:
    - name: serviceId
      in: path
      description: The `id` of the service.
      required: true
      schema:
        type: string
        example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7
    - name: scorecardId
      in: path
      description: The `id` of the scorecard.
      required: true
      schema:
        type: string
        format: uuid
        example: f3704e4c-104d-4f21-998a-20d4364c893f
    get:
      operationId: fetch-catalog-service-scorecard
      summary: Get a Catalog Service Scorecard
      description: Fetches the given scorecard targeting the service.
      responses:
        '200':
          $ref: '#/components/responses/CatalogServiceScorecardResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Scorecards
  /v1/scorecard-templates:
    get:
      operationId: list-scorecard-templates
      summary: List Scorecard Templates
      description: Returns a paginated collection of scorecard templates.
      parameters:
      - $ref: '#/components/parameters/PageSize'
      - $ref: '#/components/parameters/PageNumber'
      - $ref: '#/components/parameters/ScorecardTemplateFilter'
      - $ref: '#/components/parameters/ScorecardTemplateSort'
      responses:
        '200':
          $ref: '#/components/responses/ListScorecardTemplatesResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Scorecards
  /v1/scorecards:
    post:
      operationId: create-scorecard
      summary: Create Scorecard
      description: Creates a scorecard.
      requestBody:
        $ref: '#/components/requestBodies/CreateScorecardRequest'
      responses:
        '201':
          $ref: '#/components/responses/ScorecardResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Scorecards
    get:
      operationId: list-scorecards
      summary: List Scorecards
      description: Returns a paginated collection of scorecards.
      parameters:
      - $ref: '#/components/parameters/PageSize'
      - $ref: '#/components/parameters/PageNumber'
      - $ref: '#/components/parameters/ScorecardFilter'
      - $ref: '#/components/parameters/ScorecardSort'
      responses:
        '200':
          $ref: '#/components/responses/ListScorecardsResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Scorecards
  /v1/scorecards/{id}:
    parameters:
    - name: id
      in: path
      description: The `id` of the scorecard.
      required: true
      schema:
        type: string
        format: uuid
        example: f3704e4c-104d-4f21-998a-20d4364c893f
    get:
      operationId: fetch-scorecard
      summary: Get a Scorecard
      description: Fetches a scorecard.
      responses:
        '200':
          $ref: '#/components/responses/ScorecardResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Scorecards
    put:
      operationId: update-scorecard
      summary: Update Scorecard
      description: Updates a scorecard.
      requestBody:
        $ref: '#/components/requestBodies/UpdateScorecardRequest'
      responses:
        '200':
          $ref: '#/components/responses/ScorecardResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Scorecards
    delete:
      operationId: delete-scorecard
      summary: Delete Scorecard
      description: Deletes a scorecard.
      responses:
        '204':
          description: Scorecard was deleted successfully.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Scorecards
  /v1/scorecards/{id}/catalog-services:
    parameters:
    - name: id
      in: path
      description: The `id` of the scorecard.
      required: true
      schema:
        type: string
        format: uuid
        example: f3704e4c-104d-4f21-998a-20d4364c893f
    get:
      operationId: list-scorecard-services
      summary: List Scorecard Services
      description: Lists services targeted by a scorecard.
      parameters:
      - $ref: '#/components/parameters/PageSize'
      - $ref: '#/components/parameters/PageNumber'
      - $ref: '#/components/parameters/ScorecardServiceFilter'
      - $ref: '#/components/parameters/ScorecardServiceSort'
      responses:
        '200':
          $ref: '#/components/responses/ListScorecardServicesResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Scorecards
  /v1/scorecards/{id}/criteria:
    parameters:
    - name: id
      in: path
      description: The `id` of the scorecard.
      required: true
      schema:
        type: string
        format: uuid
        example: f3704e4c-104d-4f21-998a-20d4364c893f
    get:
      operationId: list-scorecard-criteria
      summary: List Scorecard Criteria
      description: Lists criteria, including passing service counts, belonging to a scorecard.
      parameters:
      - $ref: '#/components/parameters/PageSize'
      - $ref: '#/components/parameters/PageNumber'
      - $ref: '#/components/parameters/ScorecardCriteriaFilter'
      - $ref: '#/components/parameters/ScorecardCriteriaSort'
      responses:
        '200':
          $ref: '#/components/responses/ListScorecardCriteriaResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Scorecards
  /v1/scorecards/{scorecardId}/criteria/{criteriaId}/catalog-services:
    parameters:
    - name: scorecardId
      in: path
      description: The `id` of the scorecard.
      required: true
      schema:
        type: string
        format: uuid
        example: f3704e4c-104d-4f21-998a-20d4364c893f
    - name: criteriaId
      in: path
      description: The `id` of the criteria.
      required: true
      schema:
        type: string
        format: uuid
        example: 5c1121f9-3f3a-47c7-9bb6-c81a51128714
    get:
      operationId: list-scorecard-criteria-services
      summary: List Scorecard Criteria Services
      description: Lists services targeted by a scorecard criteria with evaluation results per-service.
      parameters:
      - $ref: '#/components/parameters/PageSize'
      - $ref: '#/components/parameters/PageNumber'
      - $ref: '#/components/parameters/ScorecardCriteriaServiceFilter'
      - $ref: '#/components/parameters/ScorecardCriteriaServiceSort'
      responses:
        '200':
          $ref: '#/components/responses/ListScorecardCriteriaServicesResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Scorecards
components:
  schemas:
    ScorecardTemplate:
      description: Representation of a scorecard template.
      type: object
      properties:
        name:
          $ref: '#/components/schemas/ScorecardTemplateName'
        display_name:
          type: string
          example: Kong Best Practices
        description:
          type: string
          example: Best practices that we encourage users to follow when using other Konnect applications.
        criteria:
          type: array
          items:
            $ref: '#/components/schemas/ScorecardTemplateCriteria'
          example:
          - template_name: gateway_manager_error_rate
            template_parameters:
              relative_window: 30d
            integration: gateway_manager
            section_name: Gateway Observability
          - template_name: gateway_manager_response_latency
            template_parameters:
              metric: response_latency_p95
              relative_window: 30d
            integration: gateway_manager
            section_name: Gateway Observability
          - template_name: gateway_manager_has_plugin
            template_parameters: {}
            integration: gateway_manager
            section_name: Plugin Management
      required:
      - name
      - display_name
      - description
      - criteria
    InvalidParameterChoiceItem:
      type: object
      properties:
        field:
          type: string
          example: name
          readOnly: true
        rule:
          description: invalid parameters rules
          type: string
          enum:
          - enum
          nullable: false
          readOnly: true
        reason:
          type: string
          example: is a required field
          readOnly: true
        choices:
          type: array
          items: {}
          minItems: 1
          nullable: false
          readOnly: true
          uniqueItems: true
        source:
          type: string
          example: body
      additionalProperties: false
      required:
      - field
      - reason
      - rule
      - choices
    ByLabelSelector:
      description: Entity selector that includes entities by `label` value.
      type: object
      properties:
        selector:
          type: string
          enum:
          - label
        selector_parameters:
          type: object
          properties:
            operator:
              $ref: '#/components/schemas/StringSelectorOperator'
            value:
              type: string
            label_key:
              type: string
          required:
          - operator
          - value
          - label_key
          title: LabelSelectorParams
      required:
      - selector
      - selector_parameters
    ScorecardServiceFilterParameters:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/UuidFieldFilter'
        name:
          $ref: '#/components/schemas/StringFieldFilter'
        display_name:
          $ref: '#/components/schemas/StringFieldFilter'
        custom_fields:
          description: "Filter by custom fields using dot-notation to specify the custom field.\nFilter operators are dictated by the custom field type. For example:\n\n\n  - `filter[custom_fields.owner]`\n  - `filter[custom_fields.owner][neq]=kong`\n  - `filter[custom_fields.dashboard.link][contains]=https`\n"
          oneOf:
          - $ref: '#/components/schemas/StringFieldFilter'
          - $ref: '#/components/schemas/BooleanFieldFilter'
          - $ref: '#/components/schemas/NumericFieldFilter'
        labels:
          $ref: '#/components/schemas/LabelsFieldFilter'
        created_at:
          $ref: '#/components/schemas/DateTimeFieldFilter'
        updated_at:
          $ref: '#/components/schemas/DateTimeFieldFilter'
        score.value:
          oneOf:
          - $ref: '#/components/schemas/StringFieldFilter'
        score.raw_value:
          oneOf:
          - $ref: '#/components/schemas/NumericFieldFilter'
    HasSelectorParams:
      type: object
      properties:
        operator:
          $ref: '#/components/schemas/HasRelationshipSelectorOperator'
        value:
          type: number
      required:
      - operator
      - value
    ScorecardService:
      description: Service object that includes its score for the given scorecard.
      type: object
      properties:
        id:
          description: The service ID.
          type: string
          format: uuid
          example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7
          readOnly: true
        name:
          description: 'The machine name of the Service that uniquely identifies it within the catalog.

            '
          type: string
          example: user-svc
          maxLength: 120
          minLength: 1
          pattern: ^[0-9a-z.-]+$
        display_name:
          description: The display name of the Service.
          type: string
          example: User Service
          maxLength: 120
          minLength: 1
        description:
          description: Optionally provide a description of the Service.
          type: string
          maxLength: 2048
          nullable: true
        custom_fields:
          $ref: '#/components/schemas/CustomFields'
        labels:
          $ref: '#/components/schemas/Labels'
        created_at:
          $ref: '#/components/schemas/CreatedAt'
        updated_at:
          $ref: '#/components/schemas/UpdatedAt'
        score:
          $ref: '#/components/schemas/ScorecardScore'
      required:
      - id
      - name
      - display_name
      - description
      - custom_fields
      - labels
      - created_at
      - updated_at
      - score
      title: ScorecardService
    CreateScorecardCriteria:
      type: object
      properties:
        name:
          type: string
          example: Median time to merge opened PRs is less than 6 hours over the last 3 months.
          maxLength: 2048
          minLength: 1
        enabled:
          type: boolean
          example: true
        template_name:
          $ref: '#/components/schemas/CriteriaTemplateName'
        template_parameters:
          $ref: '#/components/schemas/CriteriaParameters'
        section_name:
          description: Organizational section name for the criteria within the scorecard.
          type: string
          example: Source Code Management
          maxLength: 120
          minLength: 1
          nullable: true
      additionalProperties: false
      required:
      - enabled
      - template_name
      - template_parameters
      - section_name
    ByDisplayNameSelector:
      description: Entity selector that includes entities by `display_name`.
      type: object
      properties:
        selector:
          type: string
          enum:
          - display_name
        selector_parameters:
          $ref: '#/components/schemas/StringFieldSelectorParams'
      required:
      - selector
      - selector_parameters
    Labels:
      description: "Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\".\n"
      type: object
      example:
        env: test
      additionalProperties:
        type: string
        pattern: ^[a-z0-9A-Z]{1}([a-z0-9A-Z-._]*[a-z0-9A-Z]+)?$
        minLength: 1
        maxLength: 63
      maxProperties: 50
      title: Labels
    CriteriaParameters:
      description: 'Input parameters for the given criteria template.

        The available parameters, and its schema, are found on the criteria template definition via

        the `schema` property. Criteria template definitions are determined by the `/v1/criteria-templates`

        endpoint.

        '
      type: object
      example:
        measure: median
        threshold:
          unit: hours
          value: 6
        window:
          unit: months
          value: 3
      additionalProperties: true
      nullable: true
    ByNameSelector:
      description: Entity selector that includes entities by `name`.
      type: object
      properties:
        selector:
          type: string
          enum:
          - name
        selector_parameters:
          $ref: '#/components/schemas/StringFieldSelectorParams'
      required:
      - selector
      - selector_parameters
    NumericCustomField:
      type: number
      nullable: true
    AllEntitiesSelector:
      description: Entity selector that includes all entities of the given type within the catalog.
      type: object
      properties:
        selector:
          type: string
          enum:
          - all
        selector_parameters:
          type: string
          enum:
          - null
          nullable: true
      required:
      - selector
      - selector_parameters
    BooleanFieldFilter:
      description: Filter by a boolean value (true/false).
      type: boolean
      title: BooleanFieldFilter
    CriteriaEvaluationRelationMap:
      type: object
      properties:
        instance:
          type: string
          enum:
          - criteria_result_relation_map
        relation:
          type: string
          example: gateway_svc
        map:
          additionalProperties:
            oneOf:
            - $ref: '#/components/schemas/CriteriaEvaluationRelationResult'
            - $ref: '#/components/schemas/CriteriaEvaluationErrorResult'
      required:
      - instance
      - relation
      - map
    StringSelectorOperator:
      type: string
      enum:
      - eq
      - contains
      x-speakeasy-unknown-values: allow
    ScorecardTemplateCriteria:
      type: object
      properties:
        integration:
          description: The integration `name` when it provides the criteria template. Otherwise `null`.
          type: string
          example: null
          nullable: true
        template_name:
          $ref: '#/components/schemas/CriteriaTemplateName'
        template_parameters:
          $ref: '#/components/schemas/CriteriaParameters'
        section_name:
          description: Organizational section that the criteria belongs to within the scorecard template.
          type: string
          example: Source Code Management
          nullable: true
      required:
      - integration
      - template_name
      - template_parameters
      - section_name
    CatalogServiceScorecard:
      description: Representation of a scorecard.
      type: object
      properties:
        id:
          type: string
          format: uuid
          example: f3704e4c-104d-4f21-998a-20d4364c893f
        name:
          description: The human-readable name of the scorecard.
          type: string
          example: Incident Response
        description:
          type: string
          example: Governs key metrics pertaining to teams' incident response practices.
          nullable: true
        score:
          $ref: '#/components/schemas/ScorecardScore'
        entity_selector:
          $ref: '#/components/schemas/ScorecardEntitySelector'
        scorecard_template:
          description: 'The name of the scorecard template used to create the scorecard.

            Otherwise, `null`.

            '
          type: string
          example: kong_best_practices
          enum:
          - kong_best_practices
          - service_documentation
          - service_maturity
          - security_and_compliance
          nullable: true
          x-speakeasy-unknown-values: allow
        created_at:
          $ref: '#/components/schemas/CreatedAt'
        updated_at:
          $ref: '#/components/schemas/UpdatedAt'
        criteria:
          type: array
          items:
            $ref: '#/components/schemas/CatalogServiceScorecardCriteria'
      required:
      - id
      - name
      - description
      - score
      - entity_selector
      - scorecard_template
      - created_at
      - updated_at
      - criteria
    ScorecardWithCriteria:
      description: Representation of a scorecard.
      type: object
      properties:
        id:
          type: string
          format: uuid
          example: f3704e4c-104d-4f21-998a-20d4364c893f
        name:
          description: The human-readable name of the scorecard.
          type: string
          example: Incident Response
        description:
          type: string
          example: Governs key metrics pertaining to teams' incident response practices.
          nullable: true
        score:
          $ref: '#/components/schemas/ScorecardScore'
        entity_selector:
          $ref: '#/components/schemas/ScorecardEntitySelector'
        scorecard_template:
          description: 'The name of the scorecard template used to create the scorecard.

            Otherwise, `null`.

            '
          type: string
          example: kong_best_practices
          enum:
          - kong_best_practices
          - service_documentation
          - service_maturity
          - security_and_compliance
          nullable: true
          x-speakeasy-unknown-values: allow
        created_at:
          $ref: '#/components/schemas/CreatedAt'
        updated_at:
          $ref: '#/components/schemas/UpdatedAt'
        criteria:
          type: array
          items:
            $ref: '#/components/schemas/ScorecardCriteria'
      required:
      - id
      - name
      - description
      - score
      - entity_selector
      - scorecard_template
      - created_at
      - updated_at
      - criteria
    Scorecard:
      description: Representation of a scorecard.
      type: object
      properties:
        id:
          type: string
          format: uuid
          example: f3704e4c-104d-4f21-998a-20d4364c893f
        name:
          description: The human-readable name of the scorecard.
          type: string
          example: Incident Response
        description:
          type: string
          example: Governs key metrics pertaining to teams' incident response practices.
          nullable: true
        score:
          $ref: '#/components/schemas/ScorecardScore'
        entity_selector:
          $ref: '#/components/schemas/ScorecardEntitySelector'
        scorecard_template:
          description: 'The name of the scorecard template used to create the scorecard.

            Otherwise, `null`.

            '
          type: string
          example: kong_best_practices
          enum:
          - kong_best_practices
          - service_documentation
          - service_maturity
          - security_and_compliance
          nullable: true
          x-speakeasy-unknown-values: allow
        created_at:
          $ref: '#/components/schemas/CreatedAt'
        updated_at:
          $ref: '#/components/schemas/UpdatedAt'
      required:
      - id
      - name
      - description
      - score
      - entity_selector
      - scorecard_template
      - created_at
      - updated_at
    InvalidParameterMinimumLength:
      type: object
      properties:
        field:
          type: string
          example: name
          readOnly: true
        rule:
          description: invalid parameters rules
          type: string
          enum:
          - min_length
          - min_digits
          - min_lowercase
          - min_uppercase
          - min_symbols
          - min_items
          - min
          nullable: false
          readOnly: true
          x-speakeasy-unknown-values: allow
        minimum:
          type: integer
          example: 8
        source:
          type: string
          example: body
        reason:
          type: string
          example: must have at least 8 characters
          readOnly: true
      additionalProperties: false
      required:
      - field
      - reason
      - rule
      - minimum
    UpdatedAt:
      description: An ISO-8601 timestamp representation of entity update date.
      type: string
      format: date-time
      example: '2022-11-04T20:10:06.927Z'
      readOnly: true
      x-speakeasy-param-suppress-computed-diff: true
    InvalidParameterMaximumLength:
      type: object
      properties:
        field:
          type: string
          example: name
          readOnly: true
        rule:
          description: invalid parameters rules
          type: string
          enum:
          - max_length
          - max_items
          - max
          nullable: false
          readOnly: true
          x-speakeasy-unknown-values: allow
        maximum:
          type: integer
          example: 8
        source:
          type: string
          example: body
        reason:
          type: string
          example: must not have more than 8 characters
          readOnly: true
      additionalProperties: false
      required:
      - field
      - reason
      - rule
      - maximum
    HasDocsSelector:
      description: Entity selector to include entities by attached documentation.
      type: object
      properties:
        selector:
          type: string
          enum:
          - has_docs
        selector_parameters:
          type: string
          enum:
          - null
          nullable: true
      required:
      - selector
      - selector_parameters
    HasResourcesSelector:
      description: Entity selector that includes services by mapped resources.
      type: object
      properties:
        selector:
          type: string
          enum:
          - resource_count
        selector_parameters:
          type: object
          properties:
            operator:
              $ref: '#/components/schemas/HasRelationshipSelectorOperator'
            value:
              type: number
            resource_type:
              $ref: '#/components/schemas/CatalogResourceType'
            integration:
              description: The machine name of the integration that uniquely identifies it within the catalog.
              type: string
              example: gateway-manager
          required:
          - operator
          - value
          - resource_type
          - integration
          title: HasResourcesSelectorParams
      required:
      - selector
      - selector_parameters
    ScorecardScore:
      description: 'The current score for the given Scorecard.

        A `null` value indicates the scorecard has not yet been evaluated and therefore no score has been computed.

        '
      type: object
      properties:
        value:
          description: The human-readable score value coverted to the Scorecard's assigned grading system.
          type: string
          example: 88%
        raw_value:
          description: 'The raw, numeric score calculated during evaluation of the scorecard.

            Rounded to 3 decimal places.

            '
          type: number
          example: 87.5
          maximum: 100
          minimum: 0
      nullable: true
      required:
      - value
      - raw_value
    ScorecardCriteriaFilterParameters:
      type: object
      properties:
        evaluation.passing_services_count:
          oneOf:
          - $ref: '#/components/schemas/NumericFieldFilter'
    ScorecardCriteriaService:
      description: Service object that includes its evaluation result for the given scorecard criteria.
      type: object
      properties:
        id:
          description: The service ID.
          type: string
          format: uuid
          example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7
          readOnly: true
        name:
          description: 'The machine name of the Service that uniquely identifies it within the catalog.

            '
          type: string
          example: user-svc
          maxLength: 120
          minLength: 1
          pattern: ^[0-9a-z.-]+$
        display_name:
          description: The display name of the Service.
          type: string
          example: User Service
          maxLength: 120
          minLength: 1
        description:
          description: Optionally provide a description of the Service.
          type: string
          maxLength: 2048
          nullable: true
        custom_fields:
          $ref: '#/components/schemas/CustomFields'
        labels:
          $ref: '#/components/schemas/Labels'
        created_at:
          $ref: '#/components/schemas/CreatedAt'
        updated_at:
          $ref: '#/components/schemas/UpdatedAt'
        score:
          $ref: '#/components/schemas/ScorecardCriteriaServiceEvaluation'
      required:
      - id
      - name
      - display_name
      - description
      - custom_fields
      - labels
      - created_at
      - updated_at
      - evaluation
      title: ScorecardService
    PaginatedMeta:
      description: returns the pagination information
      type: object
      properties:
        page:
          $ref: '#/components/schemas/PageMeta'
      required:
      - page
      title: PaginatedMeta
      x-speakeasy-terraform-ignore: true
    StringFieldFilter:
      description: 'Filter using **one** of the following operators: `eq`, `oeq`, `neq`, `contains`, `ocontains`'
      type: object
      properties:
        eq:
          description: The field exactly matches the provided value.
          type: string
        contains:
          description: The field contains the provided value.
          type: string
        ocontains:
          description: The field contains any of the provided values.
          type: string
        oeq:
          description: The field matches any of the provided values.
          type: string
        neq:
          description: The field does not match the provided value.
          type: string
      additionalProperties: false
    CreatedAt:
      description: An ISO-8601 timestamp representation of entity creation date.
      type: string
      format: date-time
      example: '2022-11-04T20:10:06.927Z'
      readOnly: true
      x-speakeasy-param-suppress-computed-diff: true
    BaseError:
      description: standard error
      type: ob

# --- truncated at 32 KB (79 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kong/refs/heads/main/openapi/kong-scorecards-api-openapi.yml