Kentik AlertService API

The AlertService API from Kentik — 7 operation(s) for alertservice.

Specifications

Other Resources

🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-synthetics.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-cloud-export.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-alerting.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-mitigation.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-alert-policy.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-device.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-user.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-site.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-label.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-as-group.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-notification-channel.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-capacity-plan.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-bgp-monitoring.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-mkp.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-kmi.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-cost.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-custom-dimension.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-flow-tag.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-ai-advisor.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-audit.proto

OpenAPI Specification

kentik-alertservice-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: AI Advisor AiAdvisorDataService AlertService API
  description: '# Overview

    Provides programmatic access to AI Advisor.'
  version: v202511
  contact:
    name: Kentik API Engineering
    url: https://github.com/kentik/api-schema-public
security:
- email: []
  token: []
tags:
- name: AlertService
paths:
  /v202505/alerts:
    post:
      summary: List Alerts
      description: Returns an array of alert objects that contain information about individual alerts.
      operationId: List
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202505AlertServiceListResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v202505AlertServiceListRequest'
        required: true
      tags:
      - AlertService
  /v202505/alerts/clear:
    post:
      summary: Clear Alerts
      description: Clears alerts.
      operationId: Clear
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202505AlertServiceClearResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v202505AlertServiceClearRequest'
        required: true
      tags:
      - AlertService
  /v202505/alerts/{alertId}/comments:
    get:
      summary: List Alert Comments
      description: Returns all comments for an alert.
      operationId: ListComments
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202505AlertServiceListCommentsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: alertId
        description: The ID of the alert to list comments for.
        in: path
        required: true
        schema:
          type: string
      tags:
      - AlertService
    post:
      summary: Add Alert Comment
      description: Adds a comment to an alert.
      operationId: AddComment
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202505AlertServiceAddCommentResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: alertId
        description: The ID of the alert to add the comment to.
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AlertServiceAddCommentBody'
        required: true
      tags:
      - AlertService
  /v202505/alerts/{alertId}/external-context:
    put:
      summary: Set External Context for Alert
      description: Add or replace external context
      operationId: SetExternalContext
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202505AlertServiceSetExternalContextResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: alertId
        description: The ID of the alert to add or replace external context.
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AlertServiceSetExternalContextBody'
        required: true
      tags:
      - AlertService
  /v202505/alerts/{id}:
    get:
      summary: Get Alert
      description: Returns an alert object that contains information about an individual alert.
      operationId: Get
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202505AlertServiceGetResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: The ID of the alert to get.
        in: path
        required: true
        schema:
          type: string
      tags:
      - AlertService
  /v202505/alerts/{id}/ack:
    post:
      summary: Ack Alert
      description: Acknowledges an alert.
      operationId: Ack
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202505AlertServiceAckResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: The ID of the alert to acknowledge.
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AlertServiceAckBody'
        required: true
      tags:
      - AlertService
  /v202505/alerts/{id}/unack:
    post:
      summary: UnAck Alert
      description: Unacknowledges an alert (removes the acknowledgement).
      operationId: UnAck
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202505AlertServiceUnAckResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: The ID of the alert to remove the acknowledgement from.
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AlertServiceUnAckBody'
        required: true
      tags:
      - AlertService
components:
  schemas:
    AlertServiceUnAckBody:
      type: object
    v202505JiraCloudContext:
      type: object
      properties:
        issueKey:
          type: string
          description: Jira Cloud issue key, e.g., KEY-123.
        issueUrl:
          type: string
          description: Jira Cloud issue URL, e.g., https://instance.atlassian.net/browse/KEY-123.
      required:
      - issueKey
      - issueUrl
    v202303AttributeFilter:
      type: object
      properties:
        not:
          type: boolean
          title: Please note attribute filter operates on strings or stringified values
        empty:
          type: boolean
          description: 'Indicates that we want to check for an empty value.  To use empty this value MUST be set to

            true.  Setting not to true enables us to look for "not-empty".'
        equals:
          type: string
        startsWith:
          type: string
        endsWith:
          type: string
        contains:
          type: string
        in:
          $ref: '#/components/schemas/v202303AttributeFilterStringArray'
        any:
          type: boolean
          description: 'The equivalent of: value="*.  To use any this value MUST be set to true. Setting not to true

            enables us to look for "not-anything", but that predicate does not make much sense.'
    v202505NmsConditionOperator:
      type: string
      enum:
      - NMS_CONDITION_OPERATOR_UNSPECIFIED
      - NMS_CONDITION_OPERATOR_EQUALS
      - NMS_CONDITION_OPERATOR_LESS_THAN
      - NMS_CONDITION_OPERATOR_GREATER_THAN
      - NMS_CONDITION_OPERATOR_LESS_THAN_OR_EQUALS
      - NMS_CONDITION_OPERATOR_GREATER_THAN_OR_EQUALS
      default: NMS_CONDITION_OPERATOR_UNSPECIFIED
      title: "- NMS_CONDITION_OPERATOR_EQUALS: Equals\n - NMS_CONDITION_OPERATOR_LESS_THAN: Less than\n - NMS_CONDITION_OPERATOR_GREATER_THAN: Greater than\n - NMS_CONDITION_OPERATOR_LESS_THAN_OR_EQUALS: Less than or equals\n - NMS_CONDITION_OPERATOR_GREATER_THAN_OR_EQUALS: Greater than or equals"
    v202505Source:
      type: object
      properties:
        policyType:
          $ref: '#/components/schemas/v202505PolicyType'
        id:
          type: string
          description: The ID of the policy, can be integer ID, UUID or any other format.
      required:
      - policyType
      - id
    typesv202506SortingConfig:
      type: object
      properties:
        fields:
          type: array
          items:
            $ref: '#/components/schemas/SortingConfigField'
    v202303Severity:
      type: string
      enum:
      - SEVERITY_UNSPECIFIED
      - SEVERITY_CLEAR
      - SEVERITY_MINOR
      - SEVERITY_WARNING
      - SEVERITY_MAJOR
      - SEVERITY_SEVERE
      - SEVERITY_CRITICAL
      default: SEVERITY_UNSPECIFIED
    v202505NmsThresholdCondition:
      type: object
      properties:
        operator:
          $ref: '#/components/schemas/v202505NmsConditionOperator'
        conditionValue:
          type: string
    v202505AlertServiceSetExternalContextResponse:
      type: object
      properties:
        updatedAt:
          type: string
          format: date-time
          description: Timestamp of external context update.
          readOnly: true
    FieldBy:
      type: string
      enum:
      - BY_UNSPECIFIED
      - BY_ID
      - BY_NAME
      - BY_CREATED_AT
      - BY_UPDATED_AT
      - BY_SEVERITY
      - BY_STATUS
      - BY_POLICY_TYPE
      - BY_START_TIME
      - BY_END_TIME
      - BY_ALARM_STATE
      - BY_ALARM_POLICY_NAME
      - BY_ALARM_PRIMARY_DIMENSION
      default: BY_UNSPECIFIED
    v202303SimpleAttributeFilterStringArray:
      type: object
      properties:
        values:
          type: array
          items:
            type: string
    FlowContextInterfaceDetails:
      type: object
      properties:
        snmpId:
          type: string
          description: The SNMP ID of the interface.
          readOnly: true
        snmpAlias:
          type: string
          description: The SNMP alias of the interface (e.g. 'eth0').
          readOnly: true
        description:
          type: string
          description: The description of the interface.
          readOnly: true
        snmpSpeedMbps:
          type: string
          format: int64
          description: The SNMP speed of the interface in Mbps.
          readOnly: true
    v202505FlowContext:
      type: object
      properties:
        metricValues:
          type: array
          items:
            $ref: '#/components/schemas/FlowContextMetricValue'
          description: The metric values of the alert determined by the policy configuration.
          readOnly: true
        activationStatus:
          $ref: '#/components/schemas/FlowContextActivationStatus'
        baselineValue:
          type: number
          format: double
          description: The baseline value used when activating the alert.
          readOnly: true
        alertKeyDetails:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/FlowContextAlertKeyDetails'
          description: 'The alert key details of the alert: each key might be expanded into multiple details.'
          readOnly: true
    NmsContextDatasetInfo:
      type: object
      properties:
        customType:
          type: boolean
        dimensions:
          type: array
          items:
            type: string
        entityType:
          type: string
        measurements:
          type: array
          items:
            type: string
    v202505NmsStateSet:
      type: object
      properties:
        not:
          type: boolean
        states:
          type: array
          items:
            type: string
    v202505AlertServiceGetResponse:
      type: object
      properties:
        alert:
          $ref: '#/components/schemas/v202505Alert'
        history:
          type: array
          items:
            $ref: '#/components/schemas/v202505AlertPhase'
          description: The history of the alert.
          readOnly: true
        comments:
          type: array
          items:
            $ref: '#/components/schemas/v202505Comment'
          description: The comments on the alert.
          readOnly: true
    v202303AttributeFilterStringArray:
      type: object
      properties:
        values:
          type: array
          items:
            type: string
    v202303TimeRange:
      type: object
      properties:
        start:
          type: string
          format: date-time
        end:
          type: string
          format: date-time
    FlowContextSiteDetails:
      type: object
      properties:
        id:
          type: string
          description: The ID of the site.
          readOnly: true
        name:
          type: string
          description: The name of the site.
          readOnly: true
        latitude:
          type: string
          description: The geographic latitude of the site.
        longitude:
          type: string
          description: The geographic longitude of the site.
          readOnly: true
        location:
          type: string
          description: The location of the site (e.g. 'New York, NY').
          readOnly: true
        country:
          type: string
          description: The country of the site (e.g. 'United States').
          readOnly: true
    v202505AlertServiceClearResponse:
      type: object
      properties:
        clearedAlertIds:
          type: array
          items:
            type: string
          description: The IDs of the alerts that have been cleared.
          readOnly: true
    v202505AlertFilters:
      type: object
      properties:
        severities:
          type: array
          items:
            $ref: '#/components/schemas/v202303Severity'
          description: The severities of the alerts to list.
        alertIds:
          type: array
          items:
            type: string
            default: '[]'
          description: The IDs of the alerts to list.
        sources:
          type: array
          items:
            $ref: '#/components/schemas/v202505Source'
          description: The source policies of the alerts to list.
        keys:
          $ref: '#/components/schemas/v202303MultiAttributeFilter'
        states:
          type: array
          items:
            $ref: '#/components/schemas/v202505AlertState'
          description: The states of the alerts to list.
        startedAt:
          $ref: '#/components/schemas/v202303TimeRange'
        endedAt:
          $ref: '#/components/schemas/v202303TimeRange'
        highestSeverities:
          type: array
          items:
            $ref: '#/components/schemas/v202303Severity'
          description: Filter alerts by the highest reached severity.
        recentSeverities:
          type: array
          items:
            $ref: '#/components/schemas/v202303Severity'
          description: Filter alerts by the most recent (for active ones) and last (for cleared ones) severity.
        ackStates:
          type: array
          items:
            $ref: '#/components/schemas/v202505AlertAcknowledgement'
          description: The acknowledgement states of the alerts to list.
        activeAt:
          $ref: '#/components/schemas/v202303TimeRange'
        ackedByUserIds:
          type: array
          items:
            type: string
            default: '[]'
          description: The IDs of the users who acknowledged the alerts to list.
        includeRemovedPolicies:
          type: boolean
          default: 'false'
          description: Whether to include removed policies in the response. If true, the response will include alerts from source that has been removed.
        contextSearch:
          type: array
          items:
            type: string
            default: '[]'
          description: The context search terms (e.g. device name, interface name, site name, labels etc.) of the alerts to list.
    AlertServiceSetExternalContextBody:
      type: object
      properties:
        context:
          $ref: '#/components/schemas/v202505ExternalContext'
      required:
      - context
    typesv202506PaginationInfo:
      type: object
      properties:
        totalCount:
          type: string
          format: uint64
          description: 'total_count is the total number of items in the list.

            It may be provided optionally if include_total_count is set to false.

            It will be provided always if include_total_count is set to true.'
        hasMoreResults:
          type: boolean
          title: 'has_more_results is a flag to indicate if there are more results to fetch

            It may be provided instead of total_count if include_total_count is set to false and it would be very expensive to fetch the total count'
    v202505AlertState:
      type: string
      enum:
      - ALERT_STATE_UNSPECIFIED
      - ALERT_STATE_CLEAR
      - ALERT_STATE_ACTIVE
      default: ALERT_STATE_UNSPECIFIED
      title: "- ALERT_STATE_CLEAR: alert is cleared, no longer active\n - ALERT_STATE_ACTIVE: alert is active"
    SortingConfigOrder:
      type: string
      enum:
      - ORDER_UNSPECIFIED
      - ORDER_ASCENDING
      - ORDER_DESCENDING
      default: ORDER_UNSPECIFIED
    v202505AlertServiceAckResponse:
      type: object
      properties:
        alert:
          $ref: '#/components/schemas/v202505Alert'
    NmsContextAlarmTarget:
      type: object
      properties:
        fields:
          type: object
          additionalProperties:
            type: number
            format: double
        tags:
          type: object
          additionalProperties:
            type: string
    v202303KeyValueFilter:
      type: object
      properties:
        key:
          $ref: '#/components/schemas/v202303SimpleAttributeFilter'
        value:
          $ref: '#/components/schemas/v202303AttributeFilter'
    v202505Alert:
      type: object
      properties:
        id:
          type: string
          description: The ID (UUID format) of the alert.
          readOnly: true
        source:
          $ref: '#/components/schemas/v202505Source'
        startTimeAt:
          type: string
          format: date-time
          description: The start time of the alert.
          readOnly: true
        endTimeAt:
          type: string
          format: date-time
          description: The end time of the alert.
          readOnly: true
        state:
          $ref: '#/components/schemas/v202505AlertState'
        severity:
          $ref: '#/components/schemas/v202303Severity'
        highestSeverity:
          $ref: '#/components/schemas/v202303Severity'
        acknowledgement:
          $ref: '#/components/schemas/AlertAcknowledgement'
        eventStartTimeAt:
          type: string
          format: date-time
          description: The timestamp of the first trigger event that caused an alert to eventually activate.
          readOnly: true
        flow:
          $ref: '#/components/schemas/v202505FlowContext'
        nms:
          $ref: '#/components/schemas/v202505NmsContext'
        mitigationId:
          type: string
          format: uint64
          description: ID of the associated mitigation, if applicable.
          readOnly: true
        externalContexts:
          type: array
          items:
            $ref: '#/components/schemas/v202505ExternalContext'
          description: External contexts attached to the alert (e.g. ServiceNow).
          readOnly: true
    v202505Comment:
      type: object
      properties:
        id:
          type: string
          description: The unique identifier of the comment.
          readOnly: true
        text:
          type: string
          description: The text content of the comment.
          readOnly: true
        userId:
          type: string
          description: The ID of the user who created the comment.
          readOnly: true
        userName:
          type: string
          description: The username of the user who created the comment.
          readOnly: true
        userFullName:
          type: string
          description: The full name of the user who created the comment.
          readOnly: true
        userEmail:
          type: string
          description: The email of the user who created the comment.
          readOnly: true
        createdAt:
          type: string
          format: date-time
          description: The timestamp when the comment was created.
          readOnly: true
    FlowContextActivationStatus:
      type: string
      enum:
      - ACTIVATION_STATUS_UNSPECIFIED
      - ACTIVATION_STATUS_NOT_USED_BASELINE
      - ACTIVATION_STATUS_BASELINE_MISSING_SKIP
      - ACTIVATION_STATUS_BASELINE_MISSING_TRIGGER
      - ACTIVATION_STATUS_BASELINE_USED_FOUND
      - ACTIVATION_STATUS_BASELINE_MISSING_DEFAULT
      - ACTIVATION_STATUS_BASELINE_MISSING_LOWEST
      - ACTIVATION_STATUS_BASELINE_MISSING_HIGHEST
      - ACTIVATION_STATUS_BASELINE_NOT_FOUND_EXISTS
      - ACTIVATION_STATUS_CURRENT_MISSING_SKIP
      - ACTIVATION_STATUS_CURRENT_MISSING_TRIGGER
      - ACTIVATION_STATUS_CURRENT_USED_FOUND
      - ACTIVATION_STATUS_CURRENT_MISSING_DEFAULT
      - ACTIVATION_STATUS_CURRENT_MISSING_LOWEST
      - ACTIVATION_STATUS_CURRENT_MISSING_HIGHEST
      - ACTIVATION_STATUS_CURRENT_NOT_FOUND_EXISTS
      - ACTIVATION_STATUS_BASELINE_MISSING_DEFAULT_INSTEAD_OF_LOWEST
      - ACTIVATION_STATUS_BASELINE_MISSING_DEFAULT_INSTEAD_OF_HIGHEST
      - ACTIVATION_STATUS_CURRENT_MISSING_DEFAULT_INSTEAD_OF_LOWEST
      - ACTIVATION_STATUS_CURRENT_MISSING_DEFAULT_INSTEAD_OF_HIGHEST
      default: ACTIVATION_STATUS_UNSPECIFIED
      title: "- ACTIVATION_STATUS_NOT_USED_BASELINE: baseline for this alert key was not used (e.g. policy configuration is not using baseline)\n - ACTIVATION_STATUS_BASELINE_MISSING_SKIP: baseline for this alert key was missing, and the fallback is to just skip\n - ACTIVATION_STATUS_BASELINE_MISSING_TRIGGER: baseline for this alert key was missing, and the fallback is to trigger the alert\n - ACTIVATION_STATUS_BASELINE_USED_FOUND: baseline for this alert key was valid and hence used\n - ACTIVATION_STATUS_BASELINE_MISSING_DEFAULT: baseline for this alert key was missing and default value was used\n - ACTIVATION_STATUS_BASELINE_MISSING_LOWEST: baseline for this alert key was missing and lowest baseline value was used\n - ACTIVATION_STATUS_BASELINE_MISSING_HIGHEST: baseline for this alert key was missing and highest baseline value was used\n - ACTIVATION_STATUS_BASELINE_NOT_FOUND_EXISTS: baseline for this alert key was missing and this policy wants to trigger the alert in such case\n - ACTIVATION_STATUS_CURRENT_MISSING_SKIP: current value for this alert key was missing, and the fallback is to just skip\n - ACTIVATION_STATUS_CURRENT_MISSING_TRIGGER: current value for this alert key was missing, and the fallback is to trigger the alert\n - ACTIVATION_STATUS_CURRENT_USED_FOUND: current value for this alert key was valid and hence used\n - ACTIVATION_STATUS_CURRENT_MISSING_DEFAULT: current value for this alert key was missing and default value was used\n - ACTIVATION_STATUS_CURRENT_MISSING_LOWEST: current value for this alert key was missing and lowest current traffic value was used\n - ACTIVATION_STATUS_CURRENT_MISSING_HIGHEST: current value for this alert key was missing and highest current traffic value was used\n - ACTIVATION_STATUS_CURRENT_NOT_FOUND_EXISTS: current value for this alert key was missing and this policy wants to trigger the alert in such case\n - ACTIVATION_STATUS_BASELINE_MISSING_DEFAULT_INSTEAD_OF_LOWEST: baseline for this alert key was missing and no other value was found, so default value was used instead of lowest baseline value\n - ACTIVATION_STATUS_BASELINE_MISSING_DEFAULT_INSTEAD_OF_HIGHEST: baseline for this alert key was missing and no other value was found, so default value was used instead of highest baseline value\n - ACTIVATION_STATUS_CURRENT_MISSING_DEFAULT_INSTEAD_OF_LOWEST: current value for this alert key was missing and no other value was found, so default value was used instead of lowest current traffic value\n - ACTIVATION_STATUS_CURRENT_MISSING_DEFAULT_INSTEAD_OF_HIGHEST: current value for this alert key was missing and no other value was found, so default value was used instead of highest current traffic value"
    FlowContextMetricValue:
      type: object
      properties:
        name:
          type: string
          description: The name of the metric value (e.g. 'bytes_in', 'bytes_out', 'packets_in', 'packets_out', etc.).
          readOnly: true
        value:
          type: number
          format: double
          description: The value of the given metric.
          readOnly: true
    v202505NmsContext:
      type: object
      properties:
        activationInfo:
          $ref: '#/components/schemas/NmsContextActivationInfo'
        datasetInfo:
          $ref: '#/components/schemas/NmsContextDatasetInfo'
        targets:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/NmsContextAlarmTarget'
          title: AlarmTargets
        metricValues:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/NmsContextAlarmMetricMap'
          title: AlarmMetrics
        previousMetricValues:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/NmsContextAlarmMetricMap'
          title: AlarmPreviousStatus
        device:
          type: object
          additionalProperties:
            type: string
          title: AlarmDevice
        groupKey:
          type: object
          additionalProperties:
            type: string
          title: 'AlarmGroupKey - for example: {device_id: 123, ifindex: 42} for an interface alarm OR {agent_id: 12} for an agent alarm

            sub-set of dimensions which all matches should include'
      title: in the comments are evm equivalents
    NmsContextAlarmMetricMap:
      type: object
      properties:
        metrics:
          type: object
          additionalProperties:
            type: number
            format: double
    v202303SimpleAttributeFilter:
      type: object
      properties:
        equals:
          type: string
        startsWith:
          type: string
        endsWith:
          type: string
        contains:
          type: string
        in:
          $ref: '#/components/schemas/v202303SimpleAttributeFilterStringArray'
        any:
          type: boolean
          description: 'The equivalent of: value="*.  To use any this value MUST be set to true.'
    rpcStatus:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            $ref: '#/components/schemas/protobufAny'
    typesv202506PaginationConfig:
      type: object
      properties:
        limit:
          type: string
          format: uint64
          title: limit is how many items to return at most
        offset:
          type: string
          format: uint64
          title: offset is the offset into the list of items
        includeTotalCount:
          type: boolean
          title: 'include_total_count is a flag to enforce API service to include the total count of items in the response,

            which in some cases may be very expensive to fetch'
    v202505NmsConditionGroup:
      type: object
      properties:
        connector:
          $ref: '#/components/schemas/v202505NmsConditionConnector'
        not:
          type: boolean
        conditions:
          type: array
          items:
            $ref: '#/components/schemas/v202505NmsCondition'
        conditionGroups:
          type: array
          items:
            $ref: '#/components/schemas/v202505NmsConditionGroup'
          title: recursive
    v202505ServiceNowContext:
      type: object
      properties:
        incidentId:
          type: string
          description: Incident ID associated with incoming Kentik alert, e.g., INC0012345.
        incidentUrl:
          type: string
          description: Incident URL, e.g. https://instance.service-now.com/...
      required:
      - incidentId
      - incidentUrl
    v202505AlertAcknowledgement:
      type: string
      enum:
      - ALERT_ACKNOWLEDGEMENT_UNSPECIFIED
      - ALERT_ACKNOWLEDGEMENT_REQUIRED
      - ALERT_ACKNOWLEDGEMENT_DONE
      - ALERT_ACKNOWLEDGEMENT_NOT_ACKED
      default: ALERT_ACKNOWLEDGEMENT_UNSPECIFIED
      title: "- ALERT_ACKNOWLEDGEMENT_REQUIRED: alert acknowledgement is required (by the policy configuration)\n - ALERT_ACKNOWLEDGEMENT_DONE: alert acknowledgement is done (either manually or automatically)\n - ALERT_ACKNOWLEDGEMENT_NOT_ACKED: alert acknowledgement is not done (no matter if it's required or not)"
    v202505AlertServiceClearRequest:
      type: object
      properties:
        alertIds:
          type: array
          items:
            type: string
          description: The IDs of the alerts to clear.
      required:
      - alertIds
    FlowContextAlertKeyDetails:
      type: object
      properties:
        device:
          $ref: '#/components/schemas/FlowContextDeviceDetails'
        interface:
          $ref: '#/components/schemas/FlowContextInterfaceDetails'
        site:
          $ref: '#/components/schemas/FlowContextSiteDetails'
        extendedValue:
          type: string
          description: The extended value of the alert key.
          readOnly: true
    v202505PolicyType:
      type: string
      enum:
      - POLICY_TYPE_UNSPECIFIED
      - POLICY_TYPE_AGENT
      - POLICY_TYPE_COMPONENT
      - POLICY_TYPE_DEVICE
      - POLICY_TYPE_EVENT
      - POLICY_TYPE_INTERFACE
      - POLICY_TYPE_CUSTOM
      - POLICY_TYPE_CLOUD
      - POLICY_TYPE_PROTECT
      - POLICY_TYPE_TRAFFIC
      - POLICY_TYPE_KMETRICS
      default: POLICY_TYPE_UNSPECIFIED
      title: "- POLICY_TYPE_AGENT: NMS Agent Policy\n - POLICY_TYPE_COMPONENT: NMS Component Policy\n - POLICY_TYPE_DEVICE: NMS Device Policy\n - POLICY_TYPE_EVENT: NMS Event Policy\n - POLICY_TYPE_INTERFACE: NMS Interface Policy\n - POLICY_TYPE_CUSTOM: NMS Custom Policy\n - POLICY_TYPE_CLOUD: Flow Alerting Cloud Policy\n - POLICY_TYPE_PROTECT: Flow Alerting Protect Policy\n - POLICY_TYPE_TRAFFIC: Flow Alerting Traffic Policy\n - POLICY_TYPE_KMETRICS: Flow Alerting KMetrics Policy"
    v202505AlertServiceListRequest:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/typesv202506PaginationConfig'
        sorting:
          $ref: '#/components/schemas/typesv202506SortingConfig'
        filters:
          $ref: '#/components/schemas/v202505AlertFilters'
    v202505AlertServiceUnAckResponse:
      type: object
      properties:
        alert:
          $ref: '#/components/schemas/v202505Alert'
    v202505NmsCondition:
      type: object
      properties:
        measurement:
          type: string
        metric:
          type: string
        threshold:
          $ref: '#/components/schemas/v202505NmsThresholdCondition'
        stateChange:
          $ref: '#/components/schemas/v202505NmsStateChangeCondition'
        stateInCondition:
          $ref: '#/components/schemas/v202505NmsStateSet'
    v2

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