> For the complete documentation index, see [llms.txt](https://docs.euno.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.euno.ai/setup-configuration/account-settings/ip-whitelisting.md).

# IP Whitelisting

### Overview <a href="#toc_1" id="toc_1"></a>

IP Whitelisting lets account admins restrict which IP addresses can reach Euno — without contacting Euno support. Two scopes are enforced independently:

| Scope               | Covers                                                                                       |
| ------------------- | -------------------------------------------------------------------------------------------- |
| **Interactive**     | Human sign-ins to the Euno web app (SSO / browser sessions).                                 |
| **Non-Interactive** | Machine-to-machine traffic: personal API keys, service accounts, ETL jobs, and CI pipelines. |

Each scope has its own list of allowed IP ranges and its own **Enforce**toggle. For example, you can restrict which cloud environments your API keys may be called from while leaving browser sign-in open, or the reverse.

{% hint style="info" %}
IP Whitelisting is rolling out gradually. If you don't see it under Account Settings, ask your Euno contact to enable it for your account.
{% endhint %}

### Prerequisites <a href="#toc_2" id="toc_2"></a>

* Viewing the page requires access to Account Settings (any account member).
* Adding, editing, or deleting ranges, and toggling enforcement, requires the **Manage Security** permission. This is assigned to the **Account Admin** persona by default.

### Where to find it <a href="#toc_3" id="toc_3"></a>

Navigate to **Account Settings → IP Whitelisting**

### Managing IP ranges <a href="#toc_4" id="toc_4"></a>

Each scope — **Interactive (Human users)** and **Non-Interactive (M2M / API)** — shows:

* A status row with enforcement status (**Active** / **Disabled**), plus, for Interactive, your current IP address, or for Non-Interactive, allowed/blocked request counts from the last 24 hours.
* A table of configured ranges: CIDR, label, (Non-Interactive only) last used, created date, and who created it.

#### Add a range <a href="#toc_5" id="toc_5"></a>

1. Click **Add IP range**.
2. Enter a **CIDR or IP address** — for example `203.0.113.0/24`, or `203.0.113.10/32` for a single IP — and a **Label** (1–80 characters) to describe it.
3. Click **Save**.

A given CIDR can only be added once per scope; adding a duplicate is rejected. There is no limit on the number of ranges per scope.

#### Edit or delete a range <a href="#toc_6" id="toc_6"></a>

Use the row actions next to a range to **Edit label** (the CIDR itself is immutable once saved — delete and re-add the range if it needs to change) or **Delete** (asks for confirmation first).

#### Search <a href="#toc_7" id="toc_7"></a>

Use the search box above each table to filter ranges by label or CIDR.

### Turning enforcement on or off <a href="#toc_8" id="toc_8"></a>

Each scope has its own **Enforce** toggle.

* **Turning enforcement off** applies immediately.
* **Turning enforcement on** with no ranges configured for that scope is blocked, with the error *"Cannot turn on enforcement while no ranges have been configured."* Add at least one range first.
* **Turning on Interactive enforcement** while your current IP isn't covered by any configured range prompts a confirmation, since doing so will sign you out of your current session. You can confirm anyway or cancel.
* **Turning on Non-Interactive enforcement** while your current IP isn't covered prompts a similar confirmation, since it may immediately block API keys and service accounts calling from IPs that aren't allowlisted.

{% hint style="warning" %} When a scope is disabled, or has no ranges configured, traffic of that type is allowed from any source. {% endhint %}

### Recent blocked attempts <a href="#toc_9" id="toc_9"></a>

Admins with the Manage Security permission see a **Recent blocked attempts** panel under the Non-Interactive section, listing the most recent requests rejected by that scope's enforcement: source IP, credential identifier (the API key or service account name — never the secret itself), endpoint, and timestamp. Use this to spot legitimate automation that needs a new range added.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.euno.ai/setup-configuration/account-settings/ip-whitelisting.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
