openapi: 3.2.0 info: title: Alerts Alert Suppression Windows API description: '**Note:** API operations for the creation or retrieval of API, Page Load, or Web-Transaction alert rules are not available for ThousandEyes for Government instance. You can manage the following alert functionalities on the ThousandEyes platform using the Alerts API: * **Alerts**: Retrieve alert details. Alerts are assigned to tests through alert rules. * **Alert Rules**: Conditions that you configure in order to highlight or be notified of events of interest in your ThousandEyes tests. When an alert rule’s conditions are met, the associated alert is triggered and the alert becomes active. It remains active until the alert is cleared. Alert rules are reusable across multiple tests.. * **Alert Suppression Windows**: Suppress alerts for tests during periods such as planned maintenance. Windows can be one-time events or recurring events to handle periodic occurrences such as monthly downtime for maintenance. For more information about the alerts, see [Alerts](https://docs.thousandeyes.com/product-documentation/alerts). ' 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/ servers: - description: ThousandEyes API production URL url: https://api.thousandeyes.com/v7 security: - BearerAuth: [] tags: - name: Alert Suppression Windows paths: /alert-suppression-windows: get: tags: - Alert Suppression Windows summary: List alert suppression windows operationId: getAlertSuppressionWindows description: Returns a list of all alert suppression windows configured in your account group. parameters: - $ref: '#/components/parameters/AccountGroupId' responses: '200': description: OK content: application/hal+json: schema: $ref: '#/components/schemas/AlertSuppressionWindows' '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' post: tags: - Alert Suppression Windows summary: Create alert suppression window operationId: createAlertSuppressionWindow description: Creates a new alert suppression window in ThousandEyes, using the provided POST data. Only Account Admins can create alert suppression windows. parameters: - $ref: '#/components/parameters/AccountGroupId' - $ref: '#/components/parameters/ExpandAlert' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AlertSuppressionWindowRequest' responses: '201': description: Created headers: Location: $ref: '#/components/headers/Location' content: application/hal+json: schema: $ref: '#/components/schemas/AlertSuppressionWindowDetail' '400': $ref: '#/components/responses/400' '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' /alert-suppression-windows/{windowId}: get: tags: - Alert Suppression Windows summary: Retrieve alert suppression window operationId: getAlertSuppressionWindow description: Returns detailed information about an alert suppression window configured in your account group. parameters: - $ref: '#/components/parameters/WindowId' - $ref: '#/components/parameters/AccountGroupId' - $ref: '#/components/parameters/ExpandAlert' responses: '200': description: OK content: application/hal+json: schema: $ref: '#/components/schemas/AlertSuppressionWindowDetail' '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' put: tags: - Alert Suppression Windows summary: Update alert suppression window operationId: updateAlertSuppressionWindow description: Updates an alert suppression window in ThousandEyes, using the provided POST data. Only Account Admins can update alert suppression windows. parameters: - $ref: '#/components/parameters/WindowId' - $ref: '#/components/parameters/AccountGroupId' - $ref: '#/components/parameters/ExpandAlert' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AlertSuppressionWindowRequest' responses: '200': description: OK content: application/hal+json: schema: $ref: '#/components/schemas/AlertSuppressionWindowDetail' '400': $ref: '#/components/responses/400' '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' delete: tags: - Alert Suppression Windows summary: Delete alert suppression window operationId: deleteAlertSuppressionWindow description: Deletes an alert suppression window. parameters: - $ref: '#/components/parameters/WindowId' - $ref: '#/components/parameters/AccountGroupId' responses: '204': $ref: '#/components/responses/204' '400': $ref: '#/components/responses/400' '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: schemas: ValidationError: type: object allOf: - $ref: '#/components/schemas/Error' - type: object properties: errors: type: - array - 'null' description: (Optional) When multiple errors occur, the details for each error are listed. items: $ref: '#/components/schemas/ValidationErrorItem' AlertSuppressionWindows: type: object description: Alert suppression windows. properties: alertSuppressionWindows: type: array items: $ref: '#/components/schemas/AlertSuppressionWindow' _links: $ref: '#/components/schemas/SelfLinks' BaseAlertSuppressionWindow: type: object description: Alert suppression window. properties: alertSuppressionWindowId: type: string description: Unique ID of the alert suppression window. example: '2411' readOnly: true name: type: string description: Name of the alert suppression window. example: Monthly maintenance isEnabled: type: boolean description: Set to `false` for `disabled`, `true` for `enabled`. example: false status: $ref: '#/components/schemas/AlertSuppressionWindowState' startDate: type: string format: date-time description: The date/time when the alert suppression window starts (ISO date-time format). example: '2017-07-01T05:00:00Z' duration: type: integer description: Duration in seconds the suppression window is active. example: 0 repeat: $ref: '#/components/schemas/Repeat' endRepeat: $ref: '#/components/schemas/EndRepeat' TestCreatedDate: type: string format: date-time description: UTC created date (ISO date-time format). example: '2022-07-17T22:00:54Z' readOnly: true TestCreatedBy: type: string description: User that created the test. example: user@user.com readOnly: true ValidationErrorItem: type: object properties: code: type: string description: (Optional) A unique error type/code that can be referenced in the documentation for further details. field: type: string description: Identifies the field that triggered this particular error. message: type: string description: A short, human-readable summary of the error. TestLinks: type: object description: A list of links that can be accessed to get more information properties: self: $ref: '#/components/schemas/TestSelfLink' testResults: $ref: '#/components/schemas/TestResults' readOnly: true RepeatType: type: string description: Repeat options type. enum: - day - week - month - custom example: week SimpleTest: description: Each test includes additional fields depending on its `type`. Refer `/tests/{type}` endpoint to know the set of fields returned by a given `type`. additionalProperties: true type: object properties: interval: $ref: '#/components/schemas/TestInterval' alertsEnabled: type: boolean description: Indicates if alerts are enabled. example: true enabled: $ref: '#/components/schemas/Enabled' createdBy: $ref: '#/components/schemas/TestCreatedBy' createdDate: $ref: '#/components/schemas/TestCreatedDate' description: type: string description: A description of the test. example: ThousandEyes Test liveShare: type: boolean description: Indicates if the test is shared with the account group. example: false readOnly: true modifiedBy: type: string description: User that modified the test. example: user@user.com readOnly: true modifiedDate: type: string format: date-time description: UTC last modification date (ISO date-time format). readOnly: true example: '2022-07-17T22:00:54Z' savedEvent: type: boolean description: 'Indicates if the test is a saved event. **Note**: **Saved Events** are now called **Private Snapshots** in the user interface. This change does not affect API. ' readOnly: true testId: type: string description: Each test is assigned an unique ID; this is used to access test information and results from other endpoints. readOnly: true example: '281474976710706' testName: type: string description: The name of the test. Test name must be unique. example: ThousandEyes Test type: $ref: '#/components/schemas/TestType' _links: $ref: '#/components/schemas/TestLinks' AlertSuppressionWindow: allOf: - $ref: '#/components/schemas/BaseAlertSuppressionWindow' - type: object properties: _links: $ref: '#/components/schemas/SelfLinks' DaysOfWeek: type: string description: Specifies the day to activate the alert suppression window. Applicable only when `intervalType` is set to `week`. enum: - sun - mon - tue - wed - thu - fri - sat example: sun EndRepeatType: type: string description: End repeat options type. enum: - count - never - date example: never Enabled: type: boolean description: Test is enabled. example: true default: true TestType: type: string enum: - api - agent-to-agent - agent-to-server - bgp - http-server - page-load - web-transactions - ftp-server - dns-trace - dns-server - dnssec - sip-server - voice description: This is a read only value, as test type is implicit in the test creation url. readOnly: true example: agent-to-server AlertSuppressionWindowDetail: allOf: - $ref: '#/components/schemas/AlertSuppressionWindow' - type: object properties: tests: type: array description: List of tests assigned to the alert suppression window. items: $ref: '#/components/schemas/SimpleTest' UnauthorizedError: type: object properties: error: type: string example: invalid_token error_description: type: string example: Invalid access token AlertSuppressionWindowRequest: allOf: - $ref: '#/components/schemas/BaseAlertSuppressionWindow' - type: object properties: testIds: type: array description: List of test IDs to assign to the alert suppression window. items: type: string example: '71687' 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 AlertSuppressionWindowState: type: string enum: - active - inactive - ended description: Indicates the current status of the suppression window. example: ended readOnly: true TestResults: type: array description: Reference to the test results. items: $ref: '#/components/schemas/Link' example: - href: https://api.thousandeyes.com/v7/test-results/281474976710706/network - href: https://api.thousandeyes.com/v7/test-results/281474976710706/path-vis TestInterval: type: integer enum: - 60 - 120 - 300 - 600 - 900 - 1800 - 3600 description: Interval between test runs in seconds. default: 60 example: 60 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. IntervalType: type: string description: Repeat options interval type enum: - day - week - month example: day TestSelfLink: allOf: - $ref: '#/components/schemas/Link' - description: Reference to the test. example: href: https://api.thousandeyes.com/v7/tests/{type}/281474976710706 ExpandAlertTestOptions: type: string enum: - test SelfLinks: type: object description: A links object containing the self link. readOnly: true properties: self: $ref: '#/components/schemas/Link' EndRepeat: type: object description: End repeat options. properties: type: $ref: '#/components/schemas/EndRepeatType' count: type: integer description: End repeat after number of occurrences, only valid with count type option. example: 3 date: type: string format: date description: End repeat after specific date, only valid with date type option (ISO date format). example: '2017-07-01' Repeat: type: object description: Repeat options. properties: type: $ref: '#/components/schemas/RepeatType' intervalType: $ref: '#/components/schemas/IntervalType' intervalLength: type: integer description: Number of `intervalTypes` to wait before reactivating the alert suppression window. example: 2 daysOfWeek: type: array items: $ref: '#/components/schemas/DaysOfWeek' parameters: WindowId: name: windowId in: path description: Unique window ID. example: '2411' required: true schema: type: string ExpandAlert: name: expand in: query style: form explode: false description: Optional parameter on whether or not to expand alert related resources. Without this parameter, there's no default expansion. For example, to expand the "tests" resource, use the `?expand=test` query. schema: type: array items: $ref: '#/components/schemas/ExpandAlertTestOptions' example: - test AccountGroupId: name: aid in: query description: A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. required: false schema: type: string example: '1234' responses: '429': description: Exhausted rate limit for the organization 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 '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 '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/ValidationError' example: type: about:blank title: Request validation failed. There are invalid or missing fields status: 400 detail: Your request object contains invalid fields. instance: /v7 errors: - code: AM-5432 field: firstName message: firstName cannot have fancy characters - code: DASH-5622 field: password message: Password cannot be blank '403': description: Insufficient permissions to query endpoint content: application/problem+json: schema: $ref: '#/components/schemas/Error' '401': description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/UnauthorizedError' '204': description: No content headers: Location: schema: type: string format: uri example: https://api.thousandeyes.com/v7/link/to/resource/id description: The absolute path to created resource. securitySchemes: BearerAuth: type: http scheme: bearer description: Bearer authentication token