> ## Documentation Index
> Fetch the complete documentation index at: https://docs.graphiant.com/llms.txt
> Use this file to discover all available pages before exploring further.

# /v1/diagnostic/speedtest

> Trigger Speedtest utility

## OpenAPI

````json POST /v1/diagnostic/speedtest
{
  "openapi": "3.0.0",
  "info": {
    "title": "Graphiant APIs",
    "version": "1.0.0",
    "description": "Graphiant API documentation."
  },
  "servers": [
    {
      "url": "https://api.graphiant.com"
    }
  ],
  "security": [
    {
      "jwtAuth": []
    }
  ],
  "tags": [],
  "paths": {
    "/v1/diagnostic/speedtest": {
      "post": {
        "security": [
          {
            "jwtAuth": []
          }
        ],
        "parameters": [
          {
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Bearer token. Format: Bearer <your_token_here>"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/v1DiagnosticSpeedtestPostRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1DiagnosticSpeedtestPostResponse"
                }
              }
            }
          }
        },
        "description": "Trigger Speedtest utility"
      }
    }
  },
  "components": {
    "schemas": {
      "v1DiagnosticSpeedtestPostRequest": {
        "type": "object",
        "properties": {
          "deviceId": {
            "type": "integer",
            "format": "int64",
            "example": 30000000555,
            "minimum": 0,
            "description": "Unique identifier for a specific device (required)"
          },
          "params": {
            "$ref": "#/components/schemas/diagnosticToolsSpeedtestParams"
          }
        },
        "additionalProperties": false,
        "required": [
          "deviceId"
        ]
      },
      "v1DiagnosticSpeedtestPostResponse": {
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/diagnosticToolsSpeedtestResult"
          },
          "token": {
            "type": "string",
            "example": "example string",
            "description": "Token to be sent in subsequent lookup (required)"
          }
        },
        "additionalProperties": false
      },
      "diagnosticToolsSpeedtestParams": {
        "type": "object",
        "properties": {
          "provider": {
            "type": "string",
            "example": "ookla",
            "description": "Speedtest provider name (required)"
          },
          "serverId": {
            "type": "string",
            "example": 234123,
            "description": "This is fetched using GetSpeedtestServers API"
          },
          "target": {
            "$ref": "#/components/schemas/diagnosticToolsTargetType"
          },
          "token": {
            "type": "string",
            "example": "example string",
            "description": "Token to be sent in subsequent lookup"
          }
        },
        "additionalProperties": false,
        "required": [
          "provider",
          "target"
        ]
      },
      "diagnosticToolsSpeedtestResult": {
        "type": "object",
        "properties": {
          "avgPingTime": {
            "type": "number",
            "format": "double",
            "example": 3,
            "description": "Avg Ping Time in milli seconds (required)"
          },
          "dateTime": {
            "$ref": "#/components/schemas/googleProtobufTimestamp"
          },
          "downloadSpeed": {
            "type": "number",
            "format": "double",
            "example": 30.1,
            "description": "Download speed in Mbps (required)"
          },
          "isp": {
            "type": "string",
            "example": "Google Fiber",
            "description": "ISP details (required)"
          },
          "maxPingTime": {
            "type": "number",
            "format": "double",
            "example": 5,
            "description": "Max PingTime in milli seconds (required)"
          },
          "minPingTime": {
            "type": "number",
            "format": "double",
            "example": 10,
            "description": "Min Ping Time in milli seconds (required)"
          },
          "result": {
            "type": "string",
            "example": "Failed",
            "description": "Status of the speedtest operation (required)"
          },
          "serverDetails": {
            "$ref": "#/components/schemas/diagnosticToolsSpeedtestServer"
          },
          "uploadSpeed": {
            "type": "number",
            "format": "double",
            "example": 21,
            "description": "Upload speed in Mbps (required)"
          }
        },
        "additionalProperties": false
      },
      "diagnosticToolsTargetType": {
        "type": "object",
        "properties": {
          "interface": {
            "type": "string",
            "example": "ethernet1/0",
            "description": "Source Interface name"
          },
          "vrfName": {
            "type": "string",
            "example": "isp-red",
            "description": "Configured VRF Name"
          }
        },
        "additionalProperties": false
      },
      "googleProtobufTimestamp": {
        "type": "object",
        "properties": {
          "nanos": {
            "type": "integer",
            "format": "int32",
            "example": 123
          },
          "seconds": {
            "type": "integer",
            "format": "int64",
            "example": 1234567891011
          }
        },
        "additionalProperties": false
      },
      "diagnosticToolsSpeedtestServer": {
        "type": "object",
        "properties": {
          "country": {
            "type": "string",
            "example": "United Kingdom",
            "description": "Country of the speedtest server (required)"
          },
          "host": {
            "type": "string",
            "example": "speedtest.fastmetrics.com",
            "description": "Hostname of the speedtest server (required)"
          },
          "id": {
            "type": "string",
            "example": 29113,
            "description": "Server Id. Internal mapping to a server."
          },
          "ipAddress": {
            "type": "string",
            "example": "1213:1::6451",
            "description": "IPv4 or IPv6 address (required)"
          },
          "location": {
            "type": "string",
            "example": "Sheffield",
            "description": "Location of the speedtest server (required)"
          },
          "name": {
            "type": "string",
            "example": "Google Fiber",
            "description": "Name of the speedtest server (required)"
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "jwtAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "authorization",
        "description": "Use `Bearer <token>`"
      }
    }
  }
}
````

