Gemini.Types.Request.ListModelsRequest (GeminiEx v0.0.1)

View Source

Request structure for listing models with pagination support.

Summary

Functions

Create a new ListModelsRequest with validation.

Build query parameters string from request.

Types

t()

@type t() :: %Gemini.Types.Request.ListModelsRequest{
  page_size: integer() | nil,
  page_token: String.t() | nil
}

Functions

new(opts \\ [])

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

Create a new ListModelsRequest with validation.

Parameters

  • opts - Keyword list of options:
    • :page_size - Number of models per page (1-1000)
    • :page_token - Token for pagination

Examples

iex> ListModelsRequest.new(page_size: 50)
{:ok, %ListModelsRequest{page_size: 50}}

iex> ListModelsRequest.new(page_size: 2000)
{:error, "Page size must be between 1 and 1000"}

to_query_params(list_models_request)

@spec to_query_params(t()) :: String.t()

Build query parameters string from request.