Use Omada controller API form my own application

I’m using Airtel network, and my client has an on-premises Omada controller.
We access it through the cloud link: https://aps1-omada-cloud.tplinkcloud.com/.
I want to use the Omada controller’s API for some actions. But the API requires the controller’s IP address. When I check the controller through the cloud, it only shows the internal IP (like 192.168.x.x). How can I access the Omada API in this case?
Also I've tried to use VPNs that require static IP for my controller in Starlink network.
- Copy Link
- Subscribe
- Bookmark
- Report Inappropriate Content

Hi @Arul_arul
The IP address will be the public IP address of the controller's site.
Before this, you need to configure port forwarding on the router.
Below is a guide for your reference:
How to set up Port Forwarding feature on TP-Link SMB Router (new UI)
The interface in the faq is different from the controller's. Below is the config page on Omada controller:
After this config, the IP would be: the public IP address and the port number.
- Copy Link
- Report Inappropriate Content

Hi @Arul_arul
The IP address will be the public IP address of the controller's site.
Before this, you need to configure port forwarding on the router.
Below is a guide for your reference:
How to set up Port Forwarding feature on TP-Link SMB Router (new UI)
The interface in the faq is different from the controller's. Below is the config page on Omada controller:
After this config, the IP would be: the public IP address and the port number.
- Copy Link
- Report Inappropriate Content
Hi @Arul_arul & @Vincent-TP ,
You're absolutely right to explore using the Omada API.
However, please note that the Omada Cloud Portal (e.g., aps1-omada-cloud[dot]tplinkcloud[dot]com) does not support direct API access.
The Omada Open API is only available through direct access to your Omada Controller—either:
On the local network (LAN),
Or remotely via a public IP or domain with proper port forwarding (typically HTTPS via port 443)
✅ Alternative (Secure) Option — Cloudflare Tunnel + Zero Trust
If you don’t want to expose your controller via public IP or don’t have a public IP, you can use Cloudflare Tunnel with Zero Trust. This way, you can assign a custom domain (e.g., controller[dot]example[dot]com) and securely access your controller from anywhere — without port forwarding or public IP.
🖥️ This requires a host system (Linux or Windows) where the Cloudflare Tunnel client runs.
✅ I’ve personally tested this on Linux, and it works perfectly.
📸 I’ve attached a screenshot of my working setup for reference.
- Copy Link
- Report Inappropriate Content
Hi @Vincent-TP
I'm facing an issue with configuring port forwarding. The Starlink connection is linked to my client's router and provides internet access using CGNAT. Because of this, there's no static public IP, so we’re unable to set up port forwarding or NAT rules in the Omada controller.
- Copy Link
- Report Inappropriate Content

Hi @Arul_arul
Did you subscribe DDNS service?
with a ddns service, you can bind the dynamic public IP with a fixed domain name.
- Copy Link
- Report Inappropriate Content
- Copy Link
- Report Inappropriate Content
Hi @Vincent-TP
Thanks for the suggestion!
We haven’t subscribed to a DDNS service yet, but we’ll definitely look into it. Binding the dynamic public IP to a fixed domain name sounds like a practical solution. We'll try to implement that and update you on how it goes.
- Copy Link
- Report Inappropriate Content
Hi @Arul_arul
If anything new comes up, please don't hesitate to let us know.
Arul_arul wrote
Hi @Vincent-TP
Thanks for the suggestion!
We haven’t subscribed to a DDNS service yet, but we’ll definitely look into it. Binding the dynamic public IP to a fixed domain name sounds like a practical solution. We'll try to implement that and update you on how it goes.
- Copy Link
- Report Inappropriate Content

Information
Helpful: 0
Views: 340
Replies: 7
Voters 0
No one has voted for it yet.