> Aztec.nr API reference, v6.0.0 (mainnet and testnet). Index: https://docs.aztec.network/aztec-nr-api/v6.0.0/llms.txt

# Function resolve_custom_request

Module: `noir_aztec::oracle::resolve_custom_request`

```rust
pub unconstrained fn resolve_custom_request<let M: u32, let N: u32>(
    kind: Field,
    payload: [Field; M],
) -> [Field; N]
```

Resolves a custom, caller-defined request outside the circuit.

Unlike the protocol's built-in oracles, this one carries no fixed meaning: the contract chooses a `kind` and an opaque `payload`, and PXE (or a resolver it is configured with) produces the response however it needs to, whether from local state, by coordinating with a third party, or by fetching offchain data. `kind` selects the request type so a single resolver can serve many such types; everything specific to a request goes in `payload`.
