# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Datadog APM — (API v1) Service Level Objectives API version: 1.0.0 extends: openapi/datadog-apm-service-level-objectives-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 10 - target: $.paths['/api/v1/slo'].get update: x-apievangelist-phrasing: intent: List SLOs with filters effect: read questions: - Which SLOs in our org carry a particular tag? - Can I list only the SLOs that have been deleted? - What SLOs do we have for a specific set of SLO IDs? instructions: - text: List all SLOs tagged {tags_query}. slots: tags_query: query.tags_query - text: Get the SLOs with IDs {ids}. slots: ids: query.ids - text: List {limit} SLOs whose names match {query}, starting at offset {offset}. slots: limit: query.limit query: query.query offset: query.offset method: generated generated: '2026-09-26' - target: $.paths['/api/v1/slo'].post update: x-apievangelist-phrasing: intent: Create a service level objective effect: write questions: - How do I set up a 99.9% availability SLO over 30 days? - Can I create a monitor-based SLO from a list of monitor IDs? - What SLO types can I choose when defining a new objective? instructions: - text: Create a {type} SLO named {name} with thresholds {thresholds}. slots: type: requestBody.type name: requestBody.name thresholds: requestBody.thresholds - text: Create a monitor SLO called {name} over monitors {monitor_ids} with thresholds {thresholds}. slots: name: requestBody.name monitor_ids: requestBody.monitor_ids thresholds: requestBody.thresholds method: generated generated: '2026-09-26' - target: $.paths['/api/v1/slo/bulk_delete'].post update: x-apievangelist-phrasing: intent: Bulk delete SLO thresholds by timeframe effect: destructive questions: - Can I drop just the 7-day threshold from several SLOs at once? - What happens to an SLO when I bulk delete all of its timeframes? instructions: - text: Bulk delete the 7d timeframe from these SLOs in one call. - text: Remove the listed threshold timeframes across multiple SLOs at once. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/slo/can_delete'].get update: x-apievangelist-phrasing: intent: Check whether SLOs can be safely deleted effect: read questions: - Is an SLO still used on a dashboard before I delete it? - Can I check several SLOs for dependencies before removing them? instructions: - text: Check whether SLOs {ids} can be safely deleted. slots: ids: query.ids - text: Verify nothing references SLO {ids} before I remove it. slots: ids: query.ids method: generated generated: '2026-09-26' - target: $.paths['/api/v1/slo/search'].get update: x-apievangelist-phrasing: intent: Search SLOs with facets effect: read questions: - Which SLOs belong to a given service or team when I search by query syntax? - Can an SLO search also return facet counts? instructions: - text: Search SLOs for {query}. slots: query: query.query - text: Search SLOs matching {query} with include_facets set to {include_facets}. slots: query: query.query include_facets: query.include_facets - text: Show search results page {page} with {size} SLOs per page. slots: page: query.page[number] size: query.page[size] method: generated generated: '2026-09-26' - target: $.paths['/api/v1/slo/{slo_id}'].get update: x-apievangelist-phrasing: intent: Get an SLO's details effect: read questions: - What target and timeframe is a specific SLO configured with? - Which monitors alert on a given SLO? instructions: - text: Get the details of SLO {slo_id}. slots: slo_id: path.slo_id - text: Show SLO {slo_id} along with the monitor alerts that reference it, setting that flag to {with_alerts}. slots: slo_id: path.slo_id with_alerts: query.with_configured_alert_ids method: generated generated: '2026-09-26' - target: $.paths['/api/v1/slo/{slo_id}'].put update: x-apievangelist-phrasing: intent: Update an existing SLO effect: write questions: - How do I raise the target on an SLO I already have? - Can I change the tags or description of an existing SLO? instructions: - text: Update SLO {slo_id} to use thresholds {thresholds}. slots: slo_id: path.slo_id thresholds: requestBody.thresholds - text: Rename existing SLO {slo_id} to {name}, keeping type {type} and thresholds {thresholds}. slots: slo_id: path.slo_id name: requestBody.name type: requestBody.type thresholds: requestBody.thresholds method: generated generated: '2026-09-26' - target: $.paths['/api/v1/slo/{slo_id}'].delete update: x-apievangelist-phrasing: intent: Delete an SLO effect: destructive questions: - Why does deleting an SLO return a conflict when it's on a dashboard? - Can I force delete an SLO that other resources still reference? instructions: - text: Delete SLO {slo_id}. slots: slo_id: path.slo_id - text: Force delete SLO {slo_id} even though it's referenced elsewhere, with force set to {force}. slots: slo_id: path.slo_id force: query.force method: generated generated: '2026-09-26' - target: $.paths['/api/v1/slo/{slo_id}/history'].get update: x-apievangelist-phrasing: intent: Get an SLO's history and error budget effect: read questions: - How much error budget does an SLO have left for last month? - Can I see an SLO's history without corrections applied? instructions: - text: Get the history of SLO {slo_id} from {from_ts} to {to_ts}. slots: slo_id: path.slo_id from_ts: query.from_ts to_ts: query.to_ts - text: Show SLO {slo_id} history between {from_ts} and {to_ts} with remaining error budget against target {target}. slots: slo_id: path.slo_id from_ts: query.from_ts to_ts: query.to_ts target: query.target method: generated generated: '2026-09-26' - target: $.paths['/api/v1/slo/{slo_id}/corrections'].get update: x-apievangelist-phrasing: intent: List corrections applied to one SLO effect: read questions: - Which corrections have been applied to one particular SLO? - What downtime windows are excluded from a single SLO's calculation? instructions: - text: List the corrections applied to SLO {slo_id}. slots: slo_id: path.slo_id - text: Show every correction attached to SLO {slo_id}. slots: slo_id: path.slo_id method: generated generated: '2026-09-26'