> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo/relay/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/relay/_mcp/server.

# Enum Provider Surface

> A built-in provider request/response surface.

Generated from `cargo doc --no-deps -p nemo-relay -p nemo-relay-adaptive -p nemo-relay-pii-redaction -p nemo-relay-ffi -p nemo-relay-types -p nemo-relay-plugin -p nemo-relay-worker-proto -p nemo-relay-worker`.

```rust
pub enum ProviderSurface {
    OpenAIChat,
    OpenAIResponses,
    AnthropicMessages,
}
```

A built-in provider request/response surface.

## Variants

### `OpenAIChat`

<pre />

OpenAI Chat Completions.

### `OpenAIResponses`

<pre />

OpenAI Responses.

### `AnthropicMessages`

<pre />

Anthropic Messages.

## Implementations

### `impl ProviderSurface`

<pre />

#### `codec_name`

<pre />

The canonical codec name for this surface (e.g. `"openai_chat"`), the inverse of [`Self::from_codec_name`](/reference/api/rust-library-reference/nemo-relay/codec/resolve/enum-providersurface).

#### `from_codec_name`

<pre />

Resolves a canonical codec name to its surface, or `None` when `name` is not a built-in provider codec.

## Trait Implementations

### `impl Clone for ProviderSurface`

<pre />

#### `clone`

<pre />

#### `clone_from`

<pre />

### `impl Debug for ProviderSurface`

<pre />

#### `fmt`

<pre />

### `impl PartialEq for ProviderSurface`

<pre />

#### `eq`

<pre />

#### `ne`

<pre />

### `impl Copy for ProviderSurface`

<pre />

### `impl Eq for ProviderSurface`

<pre />

### `impl StructuralPartialEq for ProviderSurface`

<pre />