# `Gemini.GovernedAuthority.MaterializationRequest`
[🔗](https://github.com/nshkrdotcom/gemini_ex/blob/v0.17.0/lib/gemini/governed_authority.ex#L1)

Secret-free binding for one transient Gemini credential materialization.

This provider-local type intentionally mirrors the frozen
`jido.credential-materialization.v1` request without making GeminiEx depend on
Jido. It is safe to inspect and include in telemetry or receipts.

# `account`

```elixir
@type account() :: %{
  provider_family: String.t(),
  account_ref: String.t(),
  tenant_id: String.t(),
  connection_id: String.t(),
  endpoint_ref: String.t(),
  quota_scope_ref: String.t(),
  generation: pos_integer(),
  fence: non_neg_integer()
}
```

# `t`

```elixir
@type t() :: %Gemini.GovernedAuthority.MaterializationRequest{
  account: account(),
  authority_ref: String.t(),
  effect_ref: String.t(),
  endpoint_ref: String.t(),
  expires_at: DateTime.t(),
  issued_at: DateTime.t(),
  lease_id: String.t(),
  materialization_ref: String.t(),
  operation_ref: String.t(),
  target_ref: String.t()
}
```

# `new!`

```elixir
@spec new!(t() | map() | keyword()) :: t()
```

# `valid_now?`

```elixir
@spec valid_now?(t(), DateTime.t()) :: boolean()
```

---

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