[nonimo]
EN
Download the app

Nonimo Gateway for Australian teams

Say yes to AI without one piece of personal information leaving your network.

Nonimo Gateway masks personal information on your own servers before every AI call and hands it back in the response. It runs in a container in front of the OpenAI API, and your services keep their code as is: the only change is the base_url.

  • Runs on your own servers
  • Your content doesn’t touch Nonimo
  • TFN, Medicare and ID numbers from other countries
POST /v1/chat/completions
  1. Leaves your staff chatbot

    Summarise the claim file for Olivia Nguyen and email her at olivia.nguyen@example.com.

  2. Reaches the provider masked in your network

    Summarise the claim file for [PERSON_1] and email her at [EMAIL_1].

  3. The provider responds

    Hi [PERSON_1], we’ve been through your claim and it’s all complete.

  4. Back to your service real details

    Hi Olivia Nguyen, we’ve been through your claim and it’s all complete.

Made-up details. Anything that calls AI through the API goes through the Gateway; ChatGPT in a browser doesn’t (for that, see Nonimo for organisations).

Getting set up

PII redaction in three steps, with no code changes to your services

No changes to your services’ code: a container on your server and a new base_url.

  1. A container, on premises or in your cloud tenancy.

    Technical detail

    It installs on your servers or in your cloud tenancy (an Australian region, if that’s your policy), next to your services, and you can run several instances at once.

  2. Your code keeps using the OpenAI API. Only the address changes.

    Technical detail

    The Gateway speaks the OpenAI API. Point your services at it and they keep calling /v1/chat/completions or /v1/responses, function calling included. Behind it can sit OpenAI or any compatible API.

  3. Personal information goes out as placeholders and comes back as the real details.

    Technical detail

    Each request is checked in full before it heads to your provider: personal information is swapped for placeholders and, in the response, every placeholder gets its real value back. Your services’ AI requests pass through it before they leave your network.

The official OpenAI SDK works without any changes; just point the client at the Gateway:

Python
from openai import OpenAI

# Same client, same key: only base_url changes
client = OpenAI(base_url="http://your-server:8080/v1")
resp = client.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": "Summarise the claim file for Olivia Nguyen."}],
)
Node
import OpenAI from "openai";

// Same client, same key: only baseURL changes
const client = new OpenAI({ baseURL: "http://your-server:8080/v1" });
const resp = await client.chat.completions.create({
  model: "gpt-4o",
  messages: [{ role: "user", content: "Summarise the claim file for Olivia Nguyen." }],
});
curl
# Your usual request, sent to your own server instead
curl http://your-server:8080/v1/chat/completions \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o",
    "messages": [{"role": "user", "content": "Summarise the claim file for Olivia Nguyen."}]
  }'

Details restored

Answers come back with the real details

Your provider only sees placeholders; your service gets the response with the real details, each one back in its place.

itsupport.example.com

Staff chatbot

Summarise the ticket Liam O’Brien[PERSON_1] logged from liam.obrien@example.com[EMAIL_1].

Response

The ticket from Liam O’Brien[PERSON_1] is a VPN login problem since Monday. I’m emailing liam.obrien@example.com[EMAIL_1] the steps to get back on.

Placeholders restored: 2 of 2 Personal information sent: 0

Customer service

Draft a reply to Isabella Martin[PERSON_1] (isabella.martin@example.com[EMAIL_1]) confirming we’ve received her paperwork.

Response

Hi Isabella Martin[PERSON_1], thanks for sending your paperwork through, we’ve received it. We’ll be in touch at isabella.martin@example.com[EMAIL_1] once everything’s ready.

Placeholders restored: 2 of 2 Personal information sent: 0

Agent with tools

Check the claim status for Mia Thompson[PERSON_1], Medicare number 2123 45671 1[MEDICARE_1].

The model calls a function

check_claim({ "patient": "Mia Thompson[PERSON_1]", "medicare": "2123 45671 1[MEDICARE_1]" })

Your tool gets the real value; the provider only ever saw the placeholder.

Placeholders restored: 2 of 2 Personal information sent: 0

HR

Prepare the onboarding letter for Noah Williams[PERSON_1], TFN 123 456 789[TFN_1].

Response

Hi Noah Williams[PERSON_1], welcome to the team. We’ll use your TFN, 123 456 789[TFN_1], to set up your pay.

Placeholders restored: 2 of 2 Personal information sent: 0
  • Every detail, its own placeholderIt doesn’t rewrite or summarise, and each detail keeps its placeholder for the whole conversation.
  • Detection runs inside your networkYour information doesn’t leave your network to be checked.
  • Function callingYour tools get the JSON arguments with the real values.

For your privacy officer: the information is pseudonymised, not de-identified, and the link back to the real details stays in your infrastructure. How it fits with the Privacy Act and the APPs, in the questions below.

We explain the difference between de-identified and pseudonymised information in de-identified vs pseudonymised.

Technical detail

Detection runs inside your network: your information doesn’t leave it to be checked. It doesn’t rewrite or summarise, it just marks what is personal information, and within a conversation each detail keeps its placeholder from start to finish. In tool calls, the provider sees placeholders and your tool gets the real values.

What goes out to OpenAI

Draft a reply to [PERSON_1] ([EMAIL_1]) confirming we’ve received her paperwork.

What your service receives

Hi Isabella Martin, thanks for sending your paperwork through, we’ve received it. We’ll be in touch at isabella.martin@example.com once everything’s ready.

ID numbers by country

PII redaction that tells a TFN from a Medicare number, and handles overseas IDs too

Every document, in its own format. Choose a country and see what reaches the AI.

Australia: also covered

  • NameChloe Taylor[PERSON_1]
  • Mobile+61 491 570 156[PHONE_1]
  • BSB000-000[BSB_1]
  • Account number00000000[BANK_ACCOUNT_AU_1]
  • Emailchloe@example.com[EMAIL_1]

And in every country

  • API keys[API_KEY_1]
  • Credit cards[CARD_1]
  • Passports (MRZ)[PASSPORT_1]
your service → Gateway → api.openai.com
  • TFN[TFN_1]
  • Medicare[MEDICARE_1]
  • ABN[ABN_1]
  • Driver licence[DRIVER_LICENCE_AU_1]

Your service sends

Process the pay run for Jack Wilson, TFN 123 456 789.

The AI receives

Process the pay run for [PERSON_1], TFN [TFN_1].

Made-up details and sample numbers that aren’t valid.

See the full table of ID numbers by country

The Gateway recognises the everyday personal information (names, email addresses, phone numbers, addresses, API keys) and, on top of that, each country’s ID numbers in their own format. Here that means TFNs, Medicare numbers, ABNs and driver licence numbers. It also covers IBANs, credit cards and passports (their machine-readable zone).

CountryID numbers
AustraliaTFN, Medicare number, ABN, driver licence number
United KingdomNational Insurance number, NHS number
United StatesSocial Security number
IrelandPPS number
GermanySteuer-ID, Sozialversicherungsnummer
FranceNIR (numéro de sécurité sociale), SIREN, SIRET
SpainDNI, NIE, NIF, Social Security number
Italycodice fiscale, partita IVA, carta d’identità elettronica (CIE), tessera sanitaria
PortugalNIF, NISS
BrazilCPF, CNPJ, CNH (driver licence)
Every countryIBAN, passports (machine-readable zone), credit cards

Versus Presidio

Weighing up Presidio? Nonimo Gateway comes ready to deploy

Presidio detects personal information in text. The OpenAI-compatible proxy that puts it in front of the API is a build job for your team; Nonimo Gateway comes with it done.

For your team: 6 of 8 tasks For your team: point base_url at the Gateway
What each option gives you and what your team has to build
Task Building on Presidio With Nonimo Gateway
Detect personal information in text Presidio covers it Included
OpenAI-compatible proxy You build it Done for you
Put it in front of your AI provider You hook it up Update base_url
Put the real details back in the response You build it Done for you
ID numbers for each country Some built in (incl. TFN, Medicare, ABN); you pick and tune the rest The ones in the table above
Text in languages other than English You set it up Done for you
Keep it up to date Your team We ship each new version
Where it runs On your infrastructure A container on your server

The full comparison, row by row: Microsoft Presidio alternative →

Technical detail

Presidio detects personal information in text, but it doesn’t include an OpenAI-compatible proxy: to put it in front of the API, your team has to build that proxy, hook it up and keep it running.

Nonimo Gateway gives you that piece already built: a container on your own server, an OpenAI-compatible API, the real details restored in the response and the ID numbers for each country in the table above.

Your infrastructure

Under your control, on your own network

You stay with your AI provider, and the Gateway is one more component inside your perimeter.

LiteLLM

Running LiteLLM? Switch on Nonimo as a guardrail

If your platform already routes calls through LiteLLM, Nonimo fits in one of two ways. Pick whichever suits.

Guardrail in LiteLLM

  1. Your services
  2. LiteLLM
  3. Nonimo
  4. The model

Out Summarise the claim file for [PERSON_1]

Back The response comes back with placeholders: [PERSON_1]

  • Personal information is masked before it reaches the model
  • Switched on in your LiteLLM config
  • The real details aren’t put back in the response
Need them back? Use proxy mode →

Gateway in proxy mode

  1. Your services
  2. Nonimo Gateway
  3. Your AI provider

Out Summarise the claim file for [PERSON_1]

Back The response comes back with the real details: Olivia Nguyen

  • Personal information is masked before it reaches the model
  • The response comes back with the real details
Technical detail

Already on LiteLLM? Nonimo switches on as a guardrail, or as a proxy in front of your provider if you want the real details back in the response.

Plans

PII redaction sized for organisations large and small

Try any plan for 30 days before you commit. If you use more words in a month than your plan includes, the Gateway gives you a heads-up and nothing gets switched off.

600 people

Suits you Nonimo Gateway Business, A$829/month

Practice

The place to start

Ideal for professional firms and small to mid-sized teams

Nonimo Gateway Practice A$489/month Nonimo Gateway Practice or A$4,890 a year

Up to 25 million words a month A team of up to about 200 people
  • 1 instance
  • Email support
Request access

Business

Built for organisations rolling out AI over several systems

Nonimo Gateway Business A$829/month Nonimo Gateway Business or A$8,290 a year

Up to 150 million words a month Up to about 1,000 people
  • Up to 3 instances
  • Offline mode on request
  • Priority support
Request access

Enterprise

For large or heavily regulated organisations

Custom pricing

  • No usage cap
  • Unlimited instances
  • Offline mode on request
  • Your own contract and terms
Get in touch
Which plan suits an organisation of our size?

By our estimate, the Practice plan gives you 25 million words each month, enough for a team of up to about 200 people. Business gives you 150 million, enough for up to about 1,000. Enterprise has no word limit and is built for organisations of over 1,000 people or working across multiple sites. If you go over, the Gateway lets you know and everything keeps working.

Access

Request access to Nonimo Gateway

Let us know what you run today and we’ll be in touch to set up a trial on your server.

Which AI tools does your team use now? (tick any that apply)

We only use these details to contact you about Nonimo Gateway. Read our privacy policy.

Questions

Questions from security and IT teams

What IT managers, security teams and privacy officers ask before rolling out the Gateway.

What it does and covers

What does the AI provider see?

The prompt with each detected item replaced by a placeholder such as [PERSON_1] or [TFN_1]. Categories you set to block don’t go out: the request stops at the Gateway and your service gets an error naming the category.

Does detection rely on an outside service?

No. Detection runs locally, inside your network.

Which APIs and features are supported?

OpenAI and any API compatible with it: Chat Completions and Responses, with function calling.

Which plan suits an organisation of our size?

By our estimate, the Practice plan gives you 25 million words each month, enough for a team of up to about 200 people. Business gives you 150 million, enough for up to about 1,000. Enterprise has no word limit and is built for organisations of over 1,000 people or working across multiple sites. If you go over, the Gateway lets you know and everything keeps working.

Security and privacy

What leaves our network?

The masked request, to your AI provider, and the licence and usage figures, to Nonimo, not your content. If your network can’t reach Nonimo, the Business and Enterprise plans have an offline mode, available on request.

What happens if the Gateway or the provider fails?

By default, the request isn’t sent and your application gets a clear error.

Does the Gateway connect to Nonimo?

Only for the licence and usage figures, not your content. If your network can’t reach Nonimo, the Business and Enterprise plans have an offline mode, available on request. Email us at hello@nonimo.ai and we’ll agree the terms.

How does this fit with the Privacy Act and the APPs?

It supports what the OAIC recommends: limiting the personal information you put into AI products. The OAIC’s guidance on commercially available AI products treats putting personal information into an AI system as a use or disclosure under APP 6, and sending it to a provider overseas can bring APP 8 (cross-border disclosure) into play. Because names and identifiers such as TFNs are swapped for placeholders before the request leaves your network, less personal information goes out. Pseudonymised information can still be personal information, so your obligations under the APPs stay with your organisation; the Gateway helps you meet them.

Deployment and licensing

What do we need to deploy it?

A server or a cluster that runs containers, on premises or in your cloud. It installs next to your services, and you can run several instances side by side.

How is it licensed?

With a signed licence per server or instance, which renews itself on the connected plans. If you go over your plan’s usage, the Gateway warns you and keeps working.

How are updates handled?

The Gateway doesn’t update itself. It just lets you know when a new version is available, and your IT team applies it whenever they like.

Guides

Further reading for your IT and security team

Guides on AI gateways, privacy proxies and keeping personal data out of your LLM API calls.

Get started

PII redaction that keeps personal information on your side of the network

Request access and connect your services to OpenAI with personal information masked from day one. For the AI tools your staff use in a browser, see Nonimo for organisations.

Tools

Remove personal details from a file or text before AI reads it. Or hide your licence card number and add a watermark before you send a copy.

All tools →