> ## Documentation Index > Fetch the complete documentation index at: https://openrouter.ai/docs/llms.txt > Use this file to discover all available pages before exploring further. # Arize AX > Send traces to Arize AX [Arize AX](https://arize.com) is an evaluation and observability platform developed by Arize; it offers tools for agent tracing, evals, prompt optimization, and more. ## Step 1: Get your Arize AX credentials In Arize AX, navigate to your space settings to find your API key and space key: 1. Log in to your Arize AX account 2. Go to **Space Settings** to find your Space Key 3. Go to **API Keys** to create or copy your API key 4. Note the Project Name you want to use for organizing traces ## Step 2: Enable Broadcast in OpenRouter Go to [Settings > Observability](https://openrouter.ai/settings/observability) and toggle **Enable Broadcast**. Enable Broadcast ## Step 3: Configure Arize AX Click the edit icon next to **Arize AX** and enter: * **Api Key**: Your Arize AX API key * **Space Key**: Your Arize AX space key * **Project Name**: The name of the tracing project in Arize AX * **Base Url** (optional): Default is `https://otlp.arize.com` ## Step 4: Test and save Click **Test Connection** to verify the setup. The configuration only saves if the test passes. ## Step 5: Send a test trace Make an API request through OpenRouter and view the trace in your Arize AX dashboard under the specified project. Arize Trace View ## Custom Metadata Arize AX uses the [OpenInference](https://github.com/Arize-ai/openinference) semantic convention for tracing. Custom metadata from the `trace` field is sent as span attributes in the OTLP payload. ### Supported Metadata Keys | Key | Arize Mapping | Description | | ----------------- | -------------- | ------------------------------------------------ | | `trace_id` | Trace ID | Group multiple requests into a single trace | | `trace_name` | Span Name | Custom name for the root trace | | `span_name` | Span Name | Name for intermediate spans in the hierarchy | | `generation_name` | Span Name | Name for the LLM generation span | | `parent_span_id` | Parent Span ID | Link to an existing span in your trace hierarchy | ### Example ```json lines theme={null} { "model": "openai/gpt-4o", "messages": [{ "role": "user", "content": "Classify this text..." }], "user": "user_12345", "session_id": "session_abc", "trace": { "trace_id": "classification_pipeline_001", "trace_name": "Text Classification", "generation_name": "Classify Sentiment", "dataset": "customer_feedback", "experiment_id": "exp_v3" } } ``` ### Additional Context * Custom metadata keys from `trace` are included as span attributes under the `metadata.*` namespace * The `user` field maps to user identification in span attributes * The `session_id` field maps to session tracking in span attributes * Token usage, costs, and model parameters are automatically included as OpenInference-compatible attributes ## Privacy Mode When [Privacy Mode](/docs/guides/features/broadcast#privacy-mode) is enabled for this destination, prompt and completion content is excluded from traces. All other trace data (token usage, costs, timing, model information, and custom metadata) is still sent normally. See [Privacy Mode](/docs/guides/features/broadcast#privacy-mode) for details.