ThousandEyes Autonomous Systems API

Retrieve information that ThousandEyes holds about Autonomous Systems.

OpenAPI Specification

thousandeyes-autonomous-systems-openapi.yml Raw ↑
openapi: 3.0.1
security:
- BearerAuth: []
servers:
- description: ThousandEyes API production URL
  url: https://api.thousandeyes.com/v7
info:
  title: Autonomous Systems API
  version: 7.0.100
  description: Retrieve information that ThousandEyes holds about Autonomous Systems.
  x-provenance:
    method: harvested
    authored_by: Cisco ThousandEyes
    harvested_by: API Evangelist
    harvested_on: '2026-08-19'
    first_party: true
    provider_published: true
    source_host: pubhub.devnetcloud.com
    note: 27 OpenAPI 3.0 documents (26 per-area plus a unified 326-operation document) served anonymously from Cisco's DevNet
      CDN. api.thousandeyes.com itself 401s every path, so the contract is public while the API host is gated.
  x-evidence:
  - type: source
    url: https://pubhub.devnetcloud.com/media/000-v7-apis/docs/reference/
  - type: source
    url: https://developer.cisco.com/docs/thousandeyes/
tags:
- name: Autonomous Systems
paths:
  /autonomous-systems/{asn}/prefixes:
    get:
      tags:
      - Autonomous System Prefixes
      summary: List IP prefixes associated with an Autonomous System
      operationId: getAutonomousSystemAssociatedPrefixes
      description: Retrieves a list of IP prefixes associated with an Autonomous System through BGP announcement, RPKI coverage
        or IRR assignment.
      parameters:
      - name: asn
        description: The Autonomous System number.
        required: true
        in: path
        schema:
          type: integer
          example: 109
      - name: expand
        in: query
        description: '(Optional) Indicates if the associations should be expanded.

          Defaults to no expansion.

          To expand the `associations` sub-resource, use the query `?expand=associations`.

          '
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/AutonomousSystemPrefixesExpand'
      responses:
        '200':
          description: OK
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AsPrefixAssociations'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Bearer authentication token
  schemas:
    AsPrefixAssociations:
      type: object
      properties:
        prefixes:
          type: array
          items:
            $ref: '#/components/schemas/PrefixAssociations'
        _links:
          $ref: '#/components/schemas/PaginationLinks'
    PrefixAssociations:
      type: object
      properties:
        prefix:
          description: The IP prefix in CIDR notation.
          type: string
          example: 198.135.0.0/21
        associations:
          description: If expanded, this array shows the method by which the prefix is associated with the Autonomous System.
          type: array
          items:
            $ref: '#/components/schemas/PrefixAssociation'
        otherAssociatedAsns:
          description: Other Autonomous System numbers associated with this IP prefix.
          type: array
          items:
            type: integer
          example:
          - 198949
      required:
      - prefix
      - otherAssociatedAsns
    PrefixAssociation:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/PrefixAssociationType'
        lastSeen:
          type: string
          format: date-time
          description: The UTC date when this association was last seen.
          example: '2025-04-30T14:55:54Z'
          readOnly: true
        source:
          type: string
          description: The data source (usually an Internet Routing Registry) where the association was found.
          example: ARIN
      required:
      - type
      - lastSeen
    PrefixAssociationType:
      type: string
      description: The method by which the prefix is associated with the Autonomous System.
      enum:
      - announced
      - rpki
      - allocated
      - unknown
      example: announced
    AutonomousSystemPrefixesExpand:
      type: array
      items:
        type: string
        enum:
        - associations
        example: associations
      example:
      - associations
    UnauthorizedError:
      type: object
      properties:
        error:
          type: string
          example: invalid_token
        error_description:
          type: string
          example: Invalid access token
    Error:
      type: object
      properties:
        type:
          type: string
          description: A URI reference that identifies the problem type. When this member is not present, its value is assumed
            to be "about:blank".
        title:
          type: string
          description: A short, human-readable summary of the problem type.
        status:
          type: integer
          description: The HTTP status code generated by the origin server for this occurrence of the problem.
        detail:
          type: string
          description: A human-readable explanation specific to this occurrence of the problem.
        instance:
          type: string
          description: A URI reference that identifies the specific occurrence of the problem.
    Link:
      type: object
      description: A hyperlink from the containing resource to a URI.
      required:
      - href
      properties:
        href:
          type: string
          description: Its value is either a URI [RFC3986] or a URI template [RFC6570].
          example: https://api.thousandeyes.com/v7/link/to/resource/id
        templated:
          type: boolean
          description: Should be true when the link object's "href" property is a URI template.
        type:
          type: string
          description: Used as a hint to indicate the media type expected when dereferencing the target resource.
        deprecation:
          type: string
          description: Its presence indicates that the link is to be deprecated at a future date. Its value is a URL that
            should provide further information about the deprecation.
        name:
          type: string
          description: Its value may be used as a secondary key for selecting link objects that share the same relation type.
        profile:
          type: string
          description: A URI that hints about the profile of the target resource.
        title:
          type: string
          description: Intended for labelling the link with a human-readable identifier
        hreflang:
          type: string
          description: Indicates the language of the target resource
    PaginationLinks:
      type: object
      description: A links object containing pagination related link(s).
      properties:
        previous:
          $ref: '#/components/schemas/Link'
        next:
          $ref: '#/components/schemas/Link'
        self:
          $ref: '#/components/schemas/Link'
  responses:
    '401':
      description: Unauthorized
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/UnauthorizedError'
    '403':
      description: Insufficient permissions to query endpoint
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Error'
    '404':
      description: Not found
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            type: about:blank
            title: URI Resource Not Found
            status: 404
            detail: Details explaining if the 404 error is related to an invalid URI or a wrong ID
            instance: /v7
    '429':
      description: Exhausted rate limit for the organization
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Error'
    '500':
      description: Internal server error
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            type: about:blank
            title: Internal server error
            status: 500
            detail: Optional detail about the internal error message.
            instance: /v7