Skip to main content

Span Attribute Filtering

April 20, 2026 Available in arize-phoenix 14.9.0+ (server), arize-phoenix-client 2.4.0+ (Python), @arizeai/phoenix-client 6.7.0+ (TypeScript) Filter spans by stored attribute values when calling GET /v1/projects/{project_identifier}/spans. Multiple attribute=key:value pairs are AND-ed together. The value’s type determines how the stored attribute is matched — passing an integer matches a stored integer; passing a string matches a stored string — so user.id: 12345 (int) and user.id: "12345" (string) are distinct filters. Python
TypeScript
REST
CLI
  • Type-aware matchingstr, int, float, and bool values each select a distinct storage type; an integer query (1) also matches whole-number floats in storage (1.0)
  • Forced-string matching — wrap a numeric-looking string in quotes: user.id:"12345" (URL-encoded %2212345%22); the Python and TypeScript clients handle this automatically
  • Colon-in-value is supported — split is on the first : only, so session.id:sess:abc:123 works without escaping
  • AND semantics — repeat the parameter or add multiple entries to the map to require all conditions

CLI Span Notes

April 20, 2026 Available in @arizeai/phoenix-cli 1.1.0+ Add free-text notes to spans from the terminal with px span add-note. Pass --include-notes to px span list or px trace get to read notes back alongside span data.
Notes are stored separately from annotations. When you pass --include-annotations, note entries are excluded from that output — use --include-notes to fetch them explicitly.

Claude Opus 4.7 in the Playground

April 20, 2026 Available in arize-phoenix 14.9.0+ Claude Opus 4.7 is now available as a model option in the Phoenix Playground. Select it from the model picker to compare outputs against other Anthropic and cross-provider models.