package ocaml-ai-sdk

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Ai_provider_openrouter.ConfigSource

OpenRouter provider configuration.

Sourcetype compatibility =
  1. | Strict
  2. | Compatible
Sourcetype fetch_fn = url:string -> headers:(string * string) list -> body:string -> Yojson.Basic.t Lwt.t

Custom HTTP function for testing.

Sourcetype t = {
  1. api_key : string option;
  2. base_url : string;
  3. default_headers : (string * string) list;
  4. fetch : fetch_fn option;
  5. app_title : string option;
  6. app_url : string option;
  7. compatibility : compatibility;
  8. api_keys : (string * string) list;
  9. extra_body : (string * Yojson.Basic.t) list;
  10. timeouts : Ai_provider.Http_timeouts.t;
}
Sourceval create : ?api_key:string -> ?base_url:string -> ?headers:(string * string) list -> ?fetch:fetch_fn -> ?app_title:string -> ?app_url:string -> ?compatibility:compatibility -> ?api_keys:(string * string) list -> ?extra_body:(string * Yojson.Basic.t) list -> ?timeouts:Ai_provider.Http_timeouts.t -> unit -> t

Create config. api_key defaults to OPENROUTER_API_KEY env var. base_url defaults to "https://openrouter.ai/api/v1". app_title sets the X-Title header. app_url sets the HTTP-Referer header. compatibility defaults to Compatible. api_keys are BYOK provider API keys sent as X-Provider-API-Keys header.

Sourceval api_key_exn : t -> string

Returns the API key or raises Failure if none configured.