# Create an SLO Create an SLO on the provided dataset. Endpoint: POST /1/slos/{datasetSlug} Version: 1.0.0 Security: configuration_key ## Path parameters: - `datasetSlug` (string, required) The dataset slug or use for endpoints that support environment-wide operations. ## Request fields (application/json): - `name` (string, required) The name of the SLO. Example: "My SLO" - `description` (string) A nice description of the SLO's intent and context. Example: "SLO to ensure requests succeed and are fast" - `sli` (object, required) Reference to the [Calculated Field (also called Derived Column)](/api/derived-columns/) used as the indicator of event success. Example: {"alias":"error_sli"} - `sli.alias` (string, required) The alias of the Calculated Field (also called Derived Column). Example: "error_sli" - `time_period_days` (integer, required) The time period, in days, over which the SLO will be evaluated. Example: 30 - `target_per_million` (integer, required) The number of events out of one million (1,000,000) that you expected qualified events to succeed. Example: 990000 - `tags` (array) A list of key-value pairs to help identify the SLO. Example: [{"key":"team","value":"blue"}] - `tags.key` (string, required) A key to identify the tag, lowercase letters only. - `tags.value` (string, required) A value for the tag, must begin with a lowercase letter, contain only alphanumeric characters (all letters lowercase) and special characters of and allowed. - `dataset_slugs` (array) The dataset(s) the SLO will be evaluated against. Required if using in the path. Example: ["mydataset1","mydataset2"] ## Response 201 fields (application/json): - `id` (string) - `name` (string, required) The name of the SLO. Example: "My SLO" - `description` (string) A nice description of the SLO's intent and context. Example: "SLO to ensure requests succeed and are fast" - `sli` (object, required) Reference to the [Calculated Field (also called Derived Column)](/api/derived-columns/) used as the indicator of event success. Example: {"alias":"error_sli"} - `sli.alias` (string, required) The alias of the Calculated Field (also called Derived Column). Example: "error_sli" - `time_period_days` (integer, required) The time period, in days, over which the SLO will be evaluated. Example: 30 - `target_per_million` (integer, required) The number of events out of one million (1,000,000) that you expected qualified events to succeed. Example: 990000 - `tags` (array) A list of key-value pairs to help identify the SLO. Example: [{"key":"team","value":"blue"}] - `tags.key` (string, required) A key to identify the tag, lowercase letters only. - `tags.value` (string, required) A value for the tag, must begin with a lowercase letter, contain only alphanumeric characters (all letters lowercase) and special characters of and allowed. - `reset_at` (null,string) The ISO8601-formatted time the SLO was last reset. The value will be if the SLO has not yet been reset. Example: "2022-011-11T09:53:04Z" - `created_at` (string) The ISO8601-formatted time when the SLO was created. Example: "2022-09-22T17:32:11Z" - `updated_at` (string) The ISO8601-formatted time when the SLO was updated. Example: "2022-10-31T15:08:11Z" - `dataset_slugs` (array) The dataset(s) the SLO will be evaluated against. Required if using in the path. Example: ["mydataset1","mydataset2"] ## Response 401 fields (application/json): - `error` (string) ## Response 403 fields (application/json): - `error` (string) ## Response 404 fields (application/json): - `error` (string) ## Response 422 fields (application/problem+json): - `error` (string, required) - `status` (number, required) The HTTP status code of the error. - `type` (string, required) Type is a URI used to uniquely identify the type of error. - `title` (string, required) Title is a human-readable summary that explains the of the problem. - `detail` (string) The general, human-readable error message. - `instance` (string) The unique identifier (ID) for this specific error. - `type_detail` (array) - `type_detail.field` (string) - `type_detail.code` (string) Enum: "invalid", "missing", "incorrect_type", "already_exists" - `type_detail.description` (string) ## Response 429 fields (application/json): - `error` (string) ## Response default fields (application/json): - `error` (string)