Skip to content

Commit 1b61c36

Browse files
authored
fix(client): HTTP headers concatenated by dashes instead of snakecase (#1404)
1 parent cff0d9c commit 1b61c36

File tree

3 files changed

+10
-10
lines changed

3 files changed

+10
-10
lines changed

langfuse/_client/span_processor.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -83,9 +83,9 @@ def __init__(
8383
# Prepare default headers
8484
default_headers = {
8585
"Authorization": basic_auth_header,
86-
"x_langfuse_sdk_name": "python",
87-
"x_langfuse_sdk_version": langfuse_version,
88-
"x_langfuse_public_key": public_key,
86+
"x-langfuse-sdk-name": "python",
87+
"x-langfuse-sdk-version": langfuse_version,
88+
"x-langfuse-public-key": public_key,
8989
}
9090

9191
# Merge additional headers if provided

langfuse/_utils/request.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,9 @@ def generate_headers(self) -> dict:
4141
f"{self._public_key}:{self._secret_key}".encode("utf-8")
4242
).decode("ascii"),
4343
"Content-Type": "application/json",
44-
"x_langfuse_sdk_name": "python",
45-
"x_langfuse_sdk_version": self._version,
46-
"x_langfuse_public_key": self._public_key,
44+
"x-langfuse-sdk-name": "python",
45+
"x-langfuse-sdk-version": self._version,
46+
"x-langfuse-public-key": self._public_key,
4747
}
4848

4949
def batch_post(self, **kwargs: Any) -> httpx.Response:

tests/test_additional_headers_simple.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -156,8 +156,8 @@ def test_span_processor_has_additional_headers_in_otel_exporter(self):
156156

157157
# Verify default headers are still present
158158
assert "Authorization" in exporter._headers
159-
assert "x_langfuse_sdk_name" in exporter._headers
160-
assert "x_langfuse_public_key" in exporter._headers
159+
assert "x-langfuse-sdk-name" in exporter._headers
160+
assert "x-langfuse-public-key" in exporter._headers
161161

162162
# Check that our override worked
163163
assert exporter._headers["X-Override-Default"] == "override-value"
@@ -179,5 +179,5 @@ def test_span_processor_none_additional_headers_works(self):
179179

180180
# Verify default headers are present
181181
assert "Authorization" in exporter._headers
182-
assert "x_langfuse_sdk_name" in exporter._headers
183-
assert "x_langfuse_public_key" in exporter._headers
182+
assert "x-langfuse-sdk-name" in exporter._headers
183+
assert "x-langfuse-public-key" in exporter._headers

0 commit comments

Comments
 (0)