ThousandEyes API Token Management API

Manage your ThousandEyes OpenAPI bearer token.

OpenAPI Specification

thousandeyes-api-token-management-openapi.yml Raw ↑
openapi: 3.0.1
security:
- BearerAuth: []
servers:
- description: ThousandEyes API production URL
  url: https://api.thousandeyes.com/v7
info:
  title: API Token Management API
  description: Manage your ThousandEyes OpenAPI bearer token.
  version: 7.0.100
  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: API Token
paths:
  /api-tokens:
    post:
      tags:
      - API Token
      summary: Regenerate API token
      operationId: regenerateApiToken
      description: "Regenerates the bearer token for your account.\n\n- Authenticate with a valid, unexpired bearer token.\n\
        - The new token is valid for 2 years from the time it is issued.\n- The previous token remains valid until the earlier\
        \ of:\n  - 14 days after regeneration.\n  - Its original expiration time.\n\n- You cannot regenerate another token\
        \ while both the new and previous tokens are valid. If you attempt to do so, the operation returns `409 Conflict`.\n"
      responses:
        '201':
          description: OK
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/ApiToken'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '409':
          description: The user has reached the maximum number of allowed tokens.
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          $ref: '#/components/responses/500'
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Bearer authentication token
  schemas:
    ApiToken:
      type: object
      properties:
        bearerToken:
          type: string
          description: The API token for your account.
          example: 123e4567-e89b-12d3-a456-426614174000
          readOnly: true
        validUntil:
          type: string
          format: date-time
          description: The date and time when the generated API token will expire.
          example: '2024-12-31T23:59:59Z'
          readOnly: true
    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.
  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'
    '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