{"type":"api","title":"Create alert suppression window","meta":{"id":"/apps/pubhub/media/000-v7-apis/5b3454a4300b838cc17f7b2cdc0690fdd15058d5/9a54eafb-59ad-38f2-a440-c003b58ad29f","info":{"description":"You can manage the following alert functionalities on the ThousandEyes platform using the Alerts API:\n\n* **Alerts**: Retrieve alert details. Alerts are assigned to tests through alert rules.\n\n* **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..\n\n* **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.\n\nFor more information about the alerts, see [Alerts](https://docs.thousandeyes.com/product-documentation/alerts).\n","title":"Alerts API","version":"7.0.34"},"security":[{"BearerAuth":[]}],"tags":[{"name":"Alerts"},{"name":"Alert Rules"},{"name":"Alert Suppression Windows"}],"openapi":"3.0.1","servers":[{"description":"ThousandEyes API production URL","url":"https://api.thousandeyes.com/v7"}],"securitySchemes":{"BearerAuth":{"description":"Bearer authentication token","scheme":"bearer","type":"http"}}},"spec":{"description":"Creates a new alert suppression window in ThousandEyes, using the provided POST data. Only Account Admins can create alert suppression windows.","operationId":"createAlertSuppressionWindow","parameters":[{"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.","in":"query","name":"aid","required":false,"schema":{"example":"1234","type":"string"}},{"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.","explode":false,"in":"query","name":"expand","required":false,"schema":{"example":["test"],"items":{"enum":["test"],"type":"string","$$ref":"#/components/schemas/ExpandAlertTestOptions"},"type":"array"},"style":"form"}],"requestBody":{"content":{"application/json":{"schema":{"description":"Alert suppression window.","properties":{"alertSuppressionWindowId":{"description":"Unique ID of the alert suppression window.","example":"2411","readOnly":true,"type":"string"},"name":{"description":"Name of the alert suppression window.","example":"Monthly maintenance","type":"string"},"isEnabled":{"description":"Set to `false` for `disabled`, `true` for `enabled`.","example":false,"type":"boolean"},"status":{"description":"Indicates the current status of the suppression window.","enum":["active","inactive","ended"],"example":"ended","readOnly":true,"type":"string","$$ref":"#/components/schemas/AlertSuppressionWindowState"},"startDate":{"description":"The date/time when the alert suppression window starts (ISO date-time format).","example":"2017-07-01T05:00:00Z","format":"date-time","type":"string"},"duration":{"description":"Duration in seconds the suppression window is active.","example":0,"type":"integer"},"repeat":{"description":"Repeat options.","properties":{"type":{"description":"Repeat options type.","enum":["day","week","month","custom"],"example":"week","type":"string","$$ref":"#/components/schemas/RepeatType"},"intervalType":{"description":"Repeat options interval type","enum":["day","week","month"],"example":"day","type":"string","$$ref":"#/components/schemas/IntervalType"},"intervalLength":{"description":"Number of `intervalTypes` to wait before reactivating the alert suppression window.","example":2,"type":"integer"},"daysOfWeek":{"items":{"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","type":"string","$$ref":"#/components/schemas/DaysOfWeek"},"type":"array"}},"type":"object","$$ref":"#/components/schemas/Repeat"},"endRepeat":{"description":"End repeat options.","properties":{"type":{"description":"End repeat options type.","enum":["count","never","date"],"example":"never","type":"string","$$ref":"#/components/schemas/EndRepeatType"},"count":{"description":"End repeat after number of occurrences, only valid with count type option.","example":3,"type":"integer"},"date":{"description":"End repeat after specific date, only valid with date type option (ISO date format).","example":"2017-07-01","format":"date","type":"string"}},"type":"object","$$ref":"#/components/schemas/EndRepeat"},"tests":{"description":"List of tests to assign to the alert suppression window.","items":{"example":"71687","type":"string"},"type":"array"}},"type":"object","$$ref":"#/components/schemas/AlertSuppressionWindowRequest"}}},"required":true},"responses":{"201":{"content":{"application/hal+json":{"schema":{"description":"Alert suppression window.","properties":{"alertSuppressionWindowId":{"description":"Unique ID of the alert suppression window.","example":"2411","readOnly":true,"type":"string"},"name":{"description":"Name of the alert suppression window.","example":"Monthly maintenance","type":"string"},"isEnabled":{"description":"Set to `false` for `disabled`, `true` for `enabled`.","example":false,"type":"boolean"},"status":{"description":"Indicates the current status of the suppression window.","enum":["active","inactive","ended"],"example":"ended","readOnly":true,"type":"string","$$ref":"#/components/schemas/AlertSuppressionWindowState"},"startDate":{"description":"The date/time when the alert suppression window starts (ISO date-time format).","example":"2017-07-01T05:00:00Z","format":"date-time","type":"string"},"duration":{"description":"Duration in seconds the suppression window is active.","example":0,"type":"integer"},"repeat":{"description":"Repeat options.","properties":{"type":{"description":"Repeat options type.","enum":["day","week","month","custom"],"example":"week","type":"string","$$ref":"#/components/schemas/RepeatType"},"intervalType":{"description":"Repeat options interval type","enum":["day","week","month"],"example":"day","type":"string","$$ref":"#/components/schemas/IntervalType"},"intervalLength":{"description":"Number of `intervalTypes` to wait before reactivating the alert suppression window.","example":2,"type":"integer"},"daysOfWeek":{"items":{"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","type":"string","$$ref":"#/components/schemas/DaysOfWeek"},"type":"array"}},"type":"object","$$ref":"#/components/schemas/Repeat"},"endRepeat":{"description":"End repeat options.","properties":{"type":{"description":"End repeat options type.","enum":["count","never","date"],"example":"never","type":"string","$$ref":"#/components/schemas/EndRepeatType"},"count":{"description":"End repeat after number of occurrences, only valid with count type option.","example":3,"type":"integer"},"date":{"description":"End repeat after specific date, only valid with date type option (ISO date format).","example":"2017-07-01","format":"date","type":"string"}},"type":"object","$$ref":"#/components/schemas/EndRepeat"},"_links":{"description":"A links object containing the self link.","properties":{"self":{"description":"A hyperlink from the containing resource to a URI.","properties":{"href":{"description":"Its value is either a URI [RFC3986] or a URI template [RFC6570].","example":"https://api.thousandeyes.com/v7/link/to/resource/id","type":"string"},"templated":{"description":"Should be true when the link object's \"href\" property is a URI template.","type":"boolean"},"type":{"description":"Used as a hint to indicate the media type expected when dereferencing the target resource.","type":"string"},"deprecation":{"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.","type":"string"},"name":{"description":"Its value may be used as a secondary key for selecting link objects that share the same relation type.","type":"string"},"profile":{"description":"A URI that hints about the profile of the target resource.","type":"string"},"title":{"description":"Intended for labelling the link with a human-readable identifier","type":"string"},"hreflang":{"description":"Indicates the language of the target resource","type":"string"}},"required":["href"],"type":"object","$$ref":"#/components/schemas/Link"}},"readOnly":true,"type":"object","$$ref":"#/components/schemas/SelfLinks"},"tests":{"description":"List of tests assigned to the alert suppression window.","items":{"additionalProperties":true,"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`.","properties":{"interval":{"default":60,"description":"Interval between test runs in seconds.","enum":[60,120,300,600,900,1800,3600],"example":60,"type":"integer","$$ref":"#/components/schemas/TestInterval"},"alertsEnabled":{"description":"Indicates if alerts are enabled.","example":true,"type":"boolean"},"enabled":{"default":true,"description":"Test is enabled.","example":true,"type":"boolean"},"createdBy":{"description":"User that created the test.","example":"user@user.com","readOnly":true,"type":"string"},"createdDate":{"description":"UTC created date (ISO date-time format).","example":"2022-07-17T22:00:54Z","format":"date-time","readOnly":true,"type":"string"},"description":{"description":"A description of the test.","example":"ThousandEyes Test","type":"string"},"liveShare":{"description":"Indicates if the test is shared with the account group.","example":false,"readOnly":true,"type":"boolean"},"modifiedBy":{"description":"User that modified the test.","example":"user@user.com","readOnly":true,"type":"string"},"modifiedDate":{"description":"UTC last modification date (ISO date-time format).","example":"2022-07-17T22:00:54Z","format":"date-time","readOnly":true,"type":"string"},"savedEvent":{"description":"Indicates if the test is a saved event.","readOnly":true,"type":"boolean"},"testId":{"description":"Each test is assigned an unique ID; this is used to access test information and results from other endpoints.","example":"281474976710706","readOnly":true,"type":"string"},"testName":{"description":"The name of the test. Test name must be unique.","example":"ThousandEyes Test","type":"string"},"type":{"description":"This is a read only value, as test type is implicit in the test creation url.","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"],"example":"agent-to-server","readOnly":true,"type":"string","$$ref":"#/components/schemas/TestType"},"_links":{"description":"A list of links that can be accessed to get more information","properties":{"self":{"description":"Reference to the test.","properties":{"href":{"description":"Its value is either a URI [RFC3986] or a URI template [RFC6570].","example":"https://api.thousandeyes.com/v7/link/to/resource/id","type":"string"},"templated":{"description":"Should be true when the link object's \"href\" property is a URI template.","type":"boolean"},"type":{"description":"Used as a hint to indicate the media type expected when dereferencing the target resource.","type":"string"},"deprecation":{"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.","type":"string"},"name":{"description":"Its value may be used as a secondary key for selecting link objects that share the same relation type.","type":"string"},"profile":{"description":"A URI that hints about the profile of the target resource.","type":"string"},"title":{"description":"Intended for labelling the link with a human-readable identifier","type":"string"},"hreflang":{"description":"Indicates the language of the target resource","type":"string"}},"required":["href"],"type":"object","$$ref":"#/components/schemas/TestSelfLink","example":{"href":"https://api.thousandeyes.com/v7/tests/{type}/281474976710706"}},"testResults":{"description":"Reference to the test results.","example":[{"href":"https://api.thousandeyes.com/v7/test-results/281474976710706/network"},{"href":"https://api.thousandeyes.com/v7/test-results/281474976710706/path-vis"}],"items":{"description":"A hyperlink from the containing resource to a URI.","properties":{"href":{"description":"Its value is either a URI [RFC3986] or a URI template [RFC6570].","example":"https://api.thousandeyes.com/v7/link/to/resource/id","type":"string"},"templated":{"description":"Should be true when the link object's \"href\" property is a URI template.","type":"boolean"},"type":{"description":"Used as a hint to indicate the media type expected when dereferencing the target resource.","type":"string"},"deprecation":{"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.","type":"string"},"name":{"description":"Its value may be used as a secondary key for selecting link objects that share the same relation type.","type":"string"},"profile":{"description":"A URI that hints about the profile of the target resource.","type":"string"},"title":{"description":"Intended for labelling the link with a human-readable identifier","type":"string"},"hreflang":{"description":"Indicates the language of the target resource","type":"string"}},"required":["href"],"type":"object","$$ref":"#/components/schemas/Link"},"type":"array"}},"readOnly":true,"type":"object","$$ref":"#/components/schemas/TestLinks"}},"type":"object","$$ref":"#/components/schemas/SimpleTest"},"type":"array"}},"type":"object","$$ref":"#/components/schemas/AlertSuppressionWindowDetail"}}},"description":"Created","headers":{"Location":{"description":"The absolute path to created resource.","schema":{"example":"https://api.thousandeyes.com/v7/link/to/resource/id","format":"uri","type":"string"},"$$ref":"#/components/headers/Location"}}},"400":{"content":{"application/problem+json":{"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"}]},"schema":{"properties":{"type":{"description":"A URI reference that identifies the problem type. When this member is not present, its value is assumed to be \"about:blank\".","type":"string"},"title":{"description":"A short, human-readable summary of the problem type.","type":"string"},"status":{"description":"The HTTP status code generated by the origin server for this occurrence of the problem.","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem.","type":"string"},"errors":{"description":"(Optional) When multiple errors occur, the details for each error are listed.","items":{"properties":{"code":{"description":"(Optional) A unique error type/code that can be referenced in the documentation for further details.","type":"string"},"field":{"description":"Identifies the field that triggered this particular error.","type":"string"},"message":{"description":"A short, human-readable summary of the error.","type":"string"}},"type":"object","$$ref":"#/components/schemas/ValidationErrorItem"},"nullable":true,"type":"array"}},"type":"object","$$ref":"#/components/schemas/ValidationError"}}},"description":"Bad Request"},"401":{"content":{"application/problem+json":{"schema":{"properties":{"error":{"example":"invalid_token","type":"string"},"error_description":{"example":"Invalid access token","type":"string"}},"type":"object","$$ref":"#/components/schemas/UnauthorizedError"}}},"description":"Unauthorized"},"403":{"content":{"application/problem+json":{"schema":{"properties":{"type":{"description":"A URI reference that identifies the problem type. When this member is not present, its value is assumed to be \"about:blank\".","type":"string"},"title":{"description":"A short, human-readable summary of the problem type.","type":"string"},"status":{"description":"The HTTP status code generated by the origin server for this occurrence of the problem.","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem.","type":"string"}},"type":"object","$$ref":"#/components/schemas/Error"}}},"description":"Insufficient permissions to query endpoint"},"404":{"content":{"application/problem+json":{"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"},"schema":{"properties":{"type":{"description":"A URI reference that identifies the problem type. When this member is not present, its value is assumed to be \"about:blank\".","type":"string"},"title":{"description":"A short, human-readable summary of the problem type.","type":"string"},"status":{"description":"The HTTP status code generated by the origin server for this occurrence of the problem.","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem.","type":"string"}},"type":"object","$$ref":"#/components/schemas/Error"}}},"description":"Not found"},"429":{"content":{"application/problem+json":{"schema":{"properties":{"type":{"description":"A URI reference that identifies the problem type. When this member is not present, its value is assumed to be \"about:blank\".","type":"string"},"title":{"description":"A short, human-readable summary of the problem type.","type":"string"},"status":{"description":"The HTTP status code generated by the origin server for this occurrence of the problem.","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem.","type":"string"}},"type":"object","$$ref":"#/components/schemas/Error"}}},"description":"Exhausted rate limit for the organization"},"500":{"content":{"application/problem+json":{"example":{"type":"about:blank","title":"Internal server error","status":500,"detail":"Optional detail about the internal error message.","instance":"/v7"},"schema":{"properties":{"type":{"description":"A URI reference that identifies the problem type. When this member is not present, its value is assumed to be \"about:blank\".","type":"string"},"title":{"description":"A short, human-readable summary of the problem type.","type":"string"},"status":{"description":"The HTTP status code generated by the origin server for this occurrence of the problem.","type":"integer"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.","type":"string"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem.","type":"string"}},"type":"object","$$ref":"#/components/schemas/Error"}}},"description":"Internal server error"}},"summary":"Create alert suppression window","tags":["Alert Suppression Windows"],"__originalOperationId":"createAlertSuppressionWindow","security":[{"BearerAuth":[]}],"method":"post","path":"/alert-suppression-windows"}}