---
title: Delete an AI Gateway routing rule
description: Delete a routing rule.
breadcrumbs: Docs > API > Delete an AI Gateway routing rule
---

> For the complete documentation index, see [llms.txt](https://docs.datadoghq.com/llms.txt).

# Delete an AI Gateway routing rule

## v2 (latest)

{% alert level="warning" %}
**Note**: This endpoint is in Preview and is subject to change.
If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help.md).
{% /alert %}

| Datadog site      | API endpoint                                              |
| ----------------- | --------------------------------------------------------- |
| app.datadoghq.com | DELETE https://api.datadoghq.com/api/v2/routing-rules     |
| us3.datadoghq.com | DELETE https://api.us3.datadoghq.com/api/v2/routing-rules |
| us5.datadoghq.com | DELETE https://api.us5.datadoghq.com/api/v2/routing-rules |
| app.datadoghq.eu  | DELETE https://api.datadoghq.eu/api/v2/routing-rules      |
| ap1.datadoghq.com | DELETE https://api.ap1.datadoghq.com/api/v2/routing-rules |
| ap2.datadoghq.com | DELETE https://api.ap2.datadoghq.com/api/v2/routing-rules |
| uk1.datadoghq.com | DELETE https://api.uk1.datadoghq.com/api/v2/routing-rules |
| app.ddog-gov.com  | DELETE https://api.ddog-gov.com/api/v2/routing-rules      |
| us2.ddog-gov.com  | DELETE https://api.us2.ddog-gov.com/api/v2/routing-rules  |

### Overview

Delete a routing rule. Referenced rules require force=true. Surviving tiers keep their ordering and weights. A deletion that would rewrite a surviving tier with an unknown ordering_issue fails with HTTP 409 and code routing_rule_unknown_ordering until that rule is replaced or deleted.

This endpoint requires the `ai_gateway_config_write` permission.

OAuth apps require the `ai_gateway_config_write` authorization [scope](https://docs.datadoghq.com/api/latest/scopes.md#ai-gateway) to access this endpoint.

### Arguments

#### Query Strings

| Field             | Type    | Description                                                                                        |
| ----------------- | ------- | -------------------------------------------------------------------------------------------------- |
| slug [*required*] | string  | Organization-unique routing rule slug.                                                             |
| force             | boolean | Delete referencing tiers and recursively delete parent rules left without tiers. Default: `false`. |

### Response

{% tabs %}
{% tab label="204" %}
No Content
{% /tab %}

{% tab label="404" %}
Not Found

{% tabs %}
{% tab label="Model" %}
API error response.

| Field               | Type     | Description       |
| ------------------- | -------- | ----------------- |
| errors [*required*] | [string] | A list of errors. |
{% /tab %}

{% tab label="Example" %}
```json
{
  "errors": [
    "Bad Request"
  ]
}
```
{% /tab %}
{% /tabs %}
{% /tab %}

{% tab label="409" %}
Conflict

{% tabs %}
{% tab label="Model" %}
API error response.

| Field               | Type     | Description       |
| ------------------- | -------- | ----------------- |
| errors [*required*] | [string] | A list of errors. |
{% /tab %}

{% tab label="Example" %}
```json
{
  "errors": [
    "Bad Request"
  ]
}
```
{% /tab %}
{% /tabs %}
{% /tab %}

{% tab label="429" %}
Too many requests

{% tabs %}
{% tab label="Model" %}
API error response.

| Field               | Type     | Description       |
| ------------------- | -------- | ----------------- |
| errors [*required*] | [string] | A list of errors. |
{% /tab %}

{% tab label="Example" %}
```json
{
  "errors": [
    "Bad Request"
  ]
}
```
{% /tab %}
{% /tabs %}
{% /tab %}
{% /tabs %}

### Code Example

{% tabs %}
{% tab label="Curl" %}
```bash
# Required query arguments
export slug="coding"

# Set your Datadog site and credentials
export DD_SITE="datadoghq.com" # Or us3.datadoghq.com, us5.datadoghq.com, datadoghq.eu, ap1.datadoghq.com, ap2.datadoghq.com, uk1.datadoghq.com, ddog-gov.com, us2.ddog-gov.com
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

curl -X DELETE "https://api.${DD_SITE}/api/v2/routing-rules?slug=${slug}" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}"
```
{% /tab %}
{% /tabs %}
