Skip to main content

Dynamic Callback Management

info

✨ This is an enterprise feature.

Get started with LiteLLM Enterprise

LiteLLM's dynamic callback management enables teams to control logging behavior on a per-request basis without requiring central infrastructure changes. This is essential for organizations managing large-scale service ecosystems where:

  • Teams manage their own compliance - Services can handle sensitive data appropriately without central oversight
  • Decentralized responsibility - Each team controls their data handling while using shared infrastructure

You can disable callbacks by passing the x-litellm-disable-callbacks header with your requests, giving teams granular control over where their data is logged.

Getting Started: List and Disable Callbacks

Managing callbacks is a two-step process:

  1. First, list your active callbacks to see what's currently enabled
  2. Then, disable specific callbacks as needed for your requests

1. List Active Callbacks

Start by viewing all currently enabled callbacks on your proxy to see what's available to disable.

Request

curl -X 'GET' \
'http://localhost:4000/callbacks/list' \
-H 'accept: application/json' \
-H 'x-litellm-api-key: sk-1234'

Response

{
"success": [
"deployment_callback_on_success",
"sync_deployment_callback_on_success"
],
"failure": [
"async_deployment_callback_on_failure",
"deployment_callback_on_failure"
],
"success_and_failure": [
"langfuse",
"datadog"
]
}

Response Fields

The response contains three arrays that categorize your active callbacks:

  • success - Callbacks that only execute when requests complete successfully. These callbacks receive data from successful LLM responses.
  • failure - Callbacks that only execute when requests fail or encounter errors. These callbacks receive error information and failed request data.
  • success_and_failure - Callbacks that execute for both successful and failed requests. These are typically logging/observability tools that need to capture all request data regardless of outcome.

2. Disable Callbacks

Now that you know which callbacks are active, you can selectively disable them using the x-litellm-disable-callbacks header. You can reference any callback name from the list response above.

Disable a Single Callback

Use the x-litellm-disable-callbacks header to disable specific callbacks for individual requests.

curl --location 'http://0.0.0.0:4000/chat/completions' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer sk-1234' \
--header 'x-litellm-disable-callbacks: langfuse' \
--data '{
"model": "claude-sonnet-4-20250514",
"messages": [
{
"role": "user",
"content": "what llm are you"
}
]
}'

Disable Multiple Callbacks

You can disable multiple callbacks by providing a comma-separated list in the header. Use any combination of callback names from your /callbacks/list response.

curl --location 'http://0.0.0.0:4000/chat/completions' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer sk-1234' \
--header 'x-litellm-disable-callbacks: langfuse,datadog,prometheus' \
--data '{
"model": "claude-sonnet-4-20250514",
"messages": [
{
"role": "user",
"content": "what llm are you"
}
]
}'

Header Format and Case Sensitivity

Expected Header Format

The x-litellm-disable-callbacks header accepts callback names in the following formats (use the exact names returned by /callbacks/list):

  • Single callback: x-litellm-disable-callbacks: langfuse
  • Multiple callbacks: x-litellm-disable-callbacks: langfuse,datadog,prometheus

When specifying multiple callbacks, use comma-separated values without spaces around the commas.

Case Sensitivity

Callback name checks are case insensitive. This means all of the following are equivalent:

# These are all equivalent
x-litellm-disable-callbacks: langfuse
x-litellm-disable-callbacks: LANGFUSE
x-litellm-disable-callbacks: LangFuse
x-litellm-disable-callbacks: langFUSE

This applies to both single and multiple callback specifications:

# Case insensitive for multiple callbacks
x-litellm-disable-callbacks: LANGFUSE,datadog,PROMETHEUS
x-litellm-disable-callbacks: langfuse,DATADOG,prometheus