# `Gemini.Types.Request.GetModelRequest`
[🔗](https://github.com/nshkrdotcom/gemini_ex/blob/v0.14.0/lib/gemini/types/request/types_request_list_models_request.ex#L83)

Request structure for getting a specific model.

# `t`
[🔗](https://github.com/nshkrdotcom/gemini_ex/blob/v0.14.0/lib/gemini/types/request/types_request_list_models_request.ex#L91)

```elixir
@type t() :: %Gemini.Types.Request.GetModelRequest{name: String.t()}
```

# `new`
[🔗](https://github.com/nshkrdotcom/gemini_ex/blob/v0.14.0/lib/gemini/types/request/types_request_list_models_request.ex#L110)

```elixir
@spec new(String.t()) :: {:ok, t()} | {:error, String.t()}
```

Create a new GetModelRequest with name normalization.

## Examples

    iex> GetModelRequest.new("gemini-flash-lite-latest")
    {:ok, %GetModelRequest{name: "models/gemini-flash-lite-latest"}}

    iex> GetModelRequest.new("models/gemini-2.5-pro")
    {:ok, %GetModelRequest{name: "models/gemini-2.5-pro"}}

    iex> GetModelRequest.new("")
    {:error, "Model name cannot be empty"}

---

*Consult [api-reference.md](api-reference.md) for complete listing*
