Skip to content

Use dash-separated header session-id instead of session_id #11732

@wengyao04

Description

@wengyao04

What version of Codex is running?

openai/codex current main in v0.101.0.

What issue are you seeing?

The Codex client sends requests to our internal Envoy-based model gateway. Our gateway rejects HTTP headers that contain underscores (_) session_id.

This behavior is intentional on our side and aligns with common HTTP best practices. Underscores in HTTP header names are discouraged due to interoperability issues with common web servers and proxies, which often ignore or drop such headers by default.

As a result, requests from the Codex client fail when underscore-containing headers are present.

Why this matters

While we can relax the validation rule in our gateway, we prefer not to, since:

  • It aligns with widely adopted HTTP conventions.
  • It avoids subtle interoperability issues across proxies and infrastructure components.
  • It maintains consistency with common production hardening practices.

Request

Would it be possible for the Codex client to switch from underscore-separated header names to dash-separated header names (e.g., x-foo-bar instead of x_foo_bar)?

Using dash-separated headers would improve compatibility with common HTTP infrastructure without requiring downstream gateways to weaken validation rules.

Metadata

Metadata

Assignees

No one assigned

    Labels

    CLIIssues related to the Codex CLIenhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions