Kentik BgpMonitoringDataService API

The BgpMonitoringDataService API from Kentik — 2 operation(s) for bgpmonitoringdataservice.

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-bgpmonitoringdataservice-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: AI Advisor AiAdvisorDataService BgpMonitoringDataService 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: BgpMonitoringDataService
paths:
  /bgp_monitoring/v202210/metrics:
    post:
      summary: Get metrics for a BGP prefix.
      description: Retrieve metric data for single BGP prefix and time interval.
      operationId: GetMetricsForTarget
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202210GetMetricsForTargetResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v202210GetMetricsForTargetRequest'
        required: true
      tags:
      - BgpMonitoringDataService
  /bgp_monitoring/v202210/routes:
    post:
      summary: Get routes for a BGP prefix.
      description: Retrieve snapshot of route information for single BGP prefix at specific time.
      operationId: GetRoutesForTarget
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202210GetRoutesForTargetResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v202210GetRoutesForTargetRequest'
        required: true
      tags:
      - BgpMonitoringDataService
components:
  schemas:
    v202210GetRoutesForTargetResponse:
      type: object
      properties:
        routes:
          type: array
          items:
            $ref: '#/components/schemas/v202210RouteInfo'
          description: List of routes
          readOnly: true
        asNames:
          type: object
          additionalProperties:
            type: string
          description: look-aside map AS names keyed by ASNs
          readOnly: true
      title: GetRoutesForTargetResponse
    v202210GetMetricsForTargetRequest:
      type: object
      properties:
        startTime:
          type: string
          format: date-time
          description: UTC timestamp of the beginning of queried interval
        endTime:
          type: string
          format: date-time
          description: UTC timestamp of the end of queried interval
        target:
          $ref: '#/components/schemas/v202210Nlri'
        includeCovered:
          type: boolean
          description: 'Return metrics for subnets (sub-prefixes) of the target prefix (default: false)'
        metrics:
          type: array
          items:
            $ref: '#/components/schemas/v202210BgpMetricType'
          description: List of one or more BGP metric types to return
      title: GetMetricsForTargetRequest
      required:
      - startTime
      - endTime
      - target
      - metrics
    v202210BgpMetricType:
      type: string
      enum:
      - BGP_METRIC_TYPE_UNSPECIFIED
      - BGP_METRIC_TYPE_REACHABILITY
      - BGP_METRIC_TYPE_PATH_CHANGES
      default: BGP_METRIC_TYPE_UNSPECIFIED
      description: "- BGP_METRIC_TYPE_UNSPECIFIED: Invalid value.\n - BGP_METRIC_TYPE_REACHABILITY: Reachability metric in percents\n - BGP_METRIC_TYPE_PATH_CHANGES: Number of path changes over time interval"
      title: BgpMetricType
    rpcStatus:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            $ref: '#/components/schemas/protobufAny'
    v202210GetMetricsForTargetResponse:
      type: object
      properties:
        metrics:
          type: array
          items:
            $ref: '#/components/schemas/v202210BgpMetric'
          description: List of observations (metric values)
          readOnly: true
      title: GetMetricsForTargetResponse
    v202303Safi:
      type: string
      enum:
      - SAFI_UNSPECIFIED
      - SAFI_UNICAST
      - SAFI_MPLS
      - SAFI_L3VPN
      default: SAFI_UNSPECIFIED
      title: Safi
    v202210BgpMetric:
      type: object
      properties:
        timestamp:
          type: string
          format: date-time
          description: UTC time of the observation
          readOnly: true
        nlri:
          $ref: '#/components/schemas/v202210Nlri'
        reachability:
          type: number
          format: float
          description: Percentage of vantage points reporting the prefix reachable
          readOnly: true
        pathChanges:
          type: integer
          format: int64
          description: Number of AS path changes for the prefix across all vantage points in the queried time interval
          readOnly: true
      title: BgpMetric
    v202303VantagePoint:
      type: object
      properties:
        dataset:
          type: string
          description: Name of the collector data set
          readOnly: true
        collector:
          type: string
          description: Name of the collector
          readOnly: true
        peerAsn:
          type: integer
          format: int64
          description: ASN of the peer from which the collector receives BGP data
          readOnly: true
        peerIp:
          type: string
          description: IP address of the peer from which the collector receives BGP data
          readOnly: true
      title: VantagePoint
    protobufAny:
      type: object
      properties:
        '@type':
          type: string
      additionalProperties: {}
    v202303RpkiStatus:
      type: string
      enum:
      - RPKI_STATUS_UNSPECIFIED
      - RPKI_STATUS_NOT_FOUND
      - RPKI_STATUS_EXPLICIT_INVALID
      - RPKI_STATUS_INVALID_PREFIX
      - RPKI_STATUS_INVALID
      - RPKI_STATUS_VALID
      - RPKI_STATUS_ERROR
      default: RPKI_STATUS_UNSPECIFIED
      description: "- RPKI_STATUS_UNSPECIFIED: Invalid value.\n - RPKI_STATUS_NOT_FOUND: No matching ROAs found for the prefix.\n - RPKI_STATUS_EXPLICIT_INVALID: Explicitly invalid prefix matching ROA\n - RPKI_STATUS_INVALID_PREFIX: Prefix format not suitable for validation\n - RPKI_STATUS_INVALID: Prefix origin does not match any matching ROA\n - RPKI_STATUS_VALID: Prefix origin matches an ROA\n - RPKI_STATUS_ERROR: Error during validation"
      title: RpkiStatus
    v202210Nlri:
      type: object
      properties:
        afi:
          $ref: '#/components/schemas/v202303Afi'
        safi:
          $ref: '#/components/schemas/v202303Safi'
        prefix:
          type: string
          description: Actual prefix data (format depends on AFI)
      title: Nlri
      required:
      - afi
      - safi
      - prefix
    v202210RouteInfo:
      type: object
      properties:
        nlri:
          $ref: '#/components/schemas/v202210Nlri'
        originAsn:
          type: integer
          format: int64
          description: The autonomous system number originating the NLRI
          readOnly: true
        asPath:
          type: array
          items:
            type: string
          description: AS path observed at the vantage point for the NLRI
        vantagePoint:
          $ref: '#/components/schemas/v202303VantagePoint'
        rpkiStatus:
          $ref: '#/components/schemas/v202303RpkiStatus'
        nexthop:
          type: string
          description: IP address of the first route hop from the vantage point toward the target
          readOnly: true
      title: RouteInfo
    v202303Afi:
      type: string
      enum:
      - AFI_UNSPECIFIED
      - AFI_IP4
      - AFI_IP6
      default: AFI_UNSPECIFIED
      title: Afi
    v202210GetRoutesForTargetRequest:
      type: object
      properties:
        time:
          type: string
          format: date-time
          description: Reference UTC time for the route information snapshot
        target:
          $ref: '#/components/schemas/v202210Nlri'
        includeCovered:
          type: boolean
          description: 'Return routes for subnets (sub-prefixes) of the target prefix (default: false)'
        checkRpki:
          type: boolean
          description: 'Return information about validity of prefix advertisements with respect to RPKI (default: false)'
      title: GetRoutesForTargetRequest
      required:
      - time
      - target
  securitySchemes:
    email:
      type: apiKey
      name: X-CH-Auth-Email
      in: header
    token:
      type: apiKey
      name: X-CH-Auth-API-Token
      in: header
externalDocs:
  description: General information about Kentik APIs
  url: https://kb.kentik.com/v0/Ab09.htm#Ab09-APIs_Overview