No KYC — no ID, no selfie, no documents · City targeting on every plan · Paid in crypto
Language: English
Get started

Targeting · every plan · no surcharge

Proxy with a specific city IP: the city parameter

One username segment picks the city. This page gives the exact format, tested examples in curl, Python and Node.js, and what to do when a city has no IP online.

Last updated: · 6 min read

Quick answer

How do I get a proxy with a specific city IP in Asia?

With Banyan Proxies, add -city- and the city name to the proxy username after the country, for example USERNAME-country-in-city-mumbai or USERNAME-country-ph-city-cebu_city. City targeting is part of every plan at no surcharge, from $1.88 for 1 GB (October 2026). City availability varies; the checkout shows what is online. No KYC, crypto only.

What does city targeting include?

Targeting levelsCountry and city targeting on every plan; ASN targeting at no extra cost. City availability varies
Username formatUSERNAME-country-{cc}-city-{city}-asn-{asn}-session-{id}-ttl-{minutes}
City namesLowercase English name, underscores for spaces: kuala_lumpur, ho_chi_minh_city, gold_coast
Included onEvery residential plan, from 1 GB at $1.88
Gatewaygw.banyanproxies.com, port 7777 (HTTP/HTTPS) or 7778 (SOCKS5)
Sticky sessionsup to 30 minutes (the IP can change earlier)
AvailabilityCity availability varies; the checkout shows what is online
Updated18 October 2026

How is the city username built?

The username is a chain of segments joined by hyphens. The full format is USERNAME-country-{cc}-city-{city}-asn-{asn}-session-{id}-ttl-{minutes}; use only the segments you need, in that order.

  • USERNAME-country-in-city-bengaluru: any home IP in Bengaluru, a new one on each connection.
  • USERNAME-country-id-city-surabaya: Surabaya, East Java.
  • USERNAME-country-vn-city-ho_chi_minh_city: Ho Chi Minh City; spaces become underscores.
  • USERNAME-country-au-city-gold_coast-session-gc1-ttl-15: one Gold Coast IP kept for 15 minutes.
  • USERNAME-country-pk-city-lahore-asn-17557: Lahore on PTCL's network (AS17557).

The country code is the two-letter ISO code in lowercase. Always send the country with the city: Hyderabad exists in India and in Pakistan, and country-pk-city-hyderabad is not the same place as country-in-city-hyderabad.

How do I write cities with two names or accents?

Use the plain English name without accents, as shown on each city page: bengaluru, chattogram, george_town. Some cities also have an older name, such as Bangalore or Chittagong. If the spelling on the page returns no IP while the country works, try the older name and tell support, so we can correct the page. The city index lists every spelling we publish.

How do I test a city IP with curl, Python and Node.js?

Send one request through the gateway and print the exit IP and the place your lookup service reports. Use a lookup service you are allowed to call; the examples use ipinfo.io's public endpoint.

curl: a rotating and a sticky Jakarta IP
# Rotating Jakarta IP over HTTP
curl -x http://gw.banyanproxies.com:7777 \
  -U "USERNAME-country-id-city-jakarta:PASSWORD" \
  https://ipinfo.io/json

# One Jakarta IP kept for 10 minutes, over SOCKS5
curl --socks5-hostname gw.banyanproxies.com:7778 \
  -U "USERNAME-country-id-city-jakarta-session-jkt1-ttl-10:PASSWORD" \
  https://ipinfo.io/json
Python (requests): one request per city
import requests

HOST = "gw.banyanproxies.com"
PORT = 7777

cities = {
    "in": "mumbai",
    "th": "chiang_mai",
    "au": "perth",
}

for country, city in cities.items():
    user = f"USERNAME-country-{country}-city-{city}"
    proxy = f"http://{user}:PASSWORD@{HOST}:{PORT}"
    try:
        r = requests.get(
            "https://ipinfo.io/json",
            proxies={"http": proxy, "https": proxy},
            timeout=30,
        )
        info = r.json()
        print(city, info.get("ip"), info.get("city"), info.get("region"))
    except requests.RequestException as exc:
        print(city, "failed:", exc)
Node.js 18+ (undici ProxyAgent): one Manila IP
// npm install undici
const { ProxyAgent, fetch } = require("undici");

const user = "USERNAME-country-ph-city-manila";
const token = Buffer.from(`${user}:PASSWORD`).toString("base64");
const agent = new ProxyAgent({
  uri: "http://gw.banyanproxies.com:7777",
  token: `Basic ${token}`,
});

fetch("https://ipinfo.io/json", { dispatcher: agent })
  .then((res) => res.json())
  .then((info) => console.log(info.ip, info.city, info.region))
  .catch((err) => console.error("failed:", err.message));

What happens when no IP is online in a city?

A small city may have few or no home devices online at a given moment. Always check the exit city of the IP you receive, then:

  1. Retry after a few minutes: home devices go on and off line through the day.
  2. Use a nearby city from the same page, for example Rawalpindi for Islamabad.
  3. Drop the -city- segment and keep the country, if the job allows it.

City availability varies; the checkout shows what is online.

Will every website see the city I asked for?

Not always. Websites place an IP with their own geolocation database, and databases disagree, especially near city borders: a Gurugram home may show as Delhi, a Petaling Jaya home as Kuala Lumpur. The city check guide shows how to test the database your target uses before a large job.

Which cities can I target?

Each of the 70 city pages gives the exact parameter, local ISPs and time zone.

India

Indonesia

Philippines

Thailand

  • Bangkok Bangkok Metropolitan Administration
  • Chiang Mai Chiang Mai city municipality , Mueang Chiang Mai district, Chiang Mai province
  • Phuket Phuket province
  • Pattaya Pattaya City , Bang Lamung district, Chonburi province
  • Khon Kaen Khon Kaen city municipality, Mueang Khon Kaen district, Khon Kaen province

Vietnam

Malaysia

Pakistan

  • Karachi Karachi Division, Sindh province
  • Lahore Lahore District, Punjab province
  • Islamabad Islamabad Capital Territory
  • Rawalpindi Rawalpindi District, Punjab province
  • Faisalabad Faisalabad District, Punjab province
  • Peshawar Peshawar District, Khyber Pakhtunkhwa province

Bangladesh

  • Dhaka Dhaka Division
  • Chittagong Chittagong Division, Chittagong District
  • Khulna Khulna Division, Khulna District

Sri Lanka

  • Colombo Western Province, Colombo District
  • Kandy Central Province, Kandy District

Nepal

  • Kathmandu Bagmati Province, Kathmandu District
  • Pokhara Gandaki Province, Kaski District

Cambodia

Singapore

Australia

New Zealand

Set sessions with the sticky residential proxies guide, copy client code from the docs, and look up terms such as ASN or CGNAT in the glossary. Every other guide is listed on the guides page.

What else do buyers ask about city targeting?

Does city targeting cost extra?

No. City targeting is included on every Banyan Proxies residential plan, from $1.88 for 1 GB to $0.50/GB on 1 TB. By comparison, DataImpulse documents that city-targeted traffic is billed at double its standard rate (read on 18 October 2026).

Can I target a postcode or a district?

No. Targeting stops at the city. Postcodes are still useful inside the target site, for example to set a delivery address on a marketplace after the page loads from the right city.

Can I combine city and ASN?

Yes: USERNAME-country-my-city-kuala_lumpur-asn-4788 asks for a Kuala Lumpur IP on TM's network. Each filter shrinks the set of matching IPs, so test before you scale. See ASN targeting.

How long can I keep one city IP?

Sticky sessions keep the same IP for the time you set (ttl, in minutes), up to 30 minutes. The IP can change earlier, for example if the residential device goes offline. Add -session-<id>-ttl-<minutes> after the city segment.

Is there a city that you do not cover?

Only the 70 cities with a page are documented, but the parameter accepts other cities in the same 14 countries. City availability varies; the checkout shows what is online. East Asia and mainland China are not covered.

Pick a city, pay in crypto

City targeting on every plan from $1.88. No KYC: no ID, no selfie, no documents.

Where do these facts come from? (3)
  1. DataImpulse city parameter (city traffic billed at double the standard rate) docs.dataimpulse.com/proxies/parameters/city.md — DataImpulse (2026-10-18)
  2. undici ProxyAgent documentation — Node.js undici
  3. ipinfo.io API — IPinfo

1 GB $1.88 · city targeting · no KYC

Get started