Background image
iProxy.online logo
Proxies para
Recursos
Empresa
Search icon
ES
English
Português
Русский
Español
Türkçe
Українська
Tiếng Việt
ไทย
中文
हिंदी
Show menu icon

iProxy Connection API

This is an API available using per-connection API KEY. Please generate connection API KEY using console api.

Prerequisites

Every request to the iProxy API must include the connection API KEY in Authorization header as Bearer token: curl --header 'Authorization: Bearer <connection_api_key>'
The API endpoint is: https://iproxy.online/api/cn/v1/

Connection control

1. Get connection

Endpoint: GET /api/cn/v1/
Example:
curl --request GET \
--header "Authorization: Bearer <conn_api_key>" \
--url https:/iproxy.online/api/cn/v1/
Response: 200: OK
{
  "id": "{conn_id}",
  "basic_info": {
    "name": "online connection",
    "description": "connection_description (optional)",
    "created_at": "2025-07-11T10:36:38.006Z",
    "updated_at": "2025-07-11T10:58:51.42Z",
    "server_geo": {
      "country": "pl",
      "city": "waw"
    },
    "is_onboarding": false,
    "user_id": "myOrOwnerUserId",
    "server_id": "someServerId"
  },
  "shared_users": [],
  "plan_info": {
    "active_plan": {
      "id": "nlUs1D8PKL",
      "started_at": "2025-07-11T10:55:10.913Z",
      "expires_at": "2025-08-10T10:55:10.913Z"
    }
  },
  "settings": {
    "prolongation_enabled": false,
    "dns": [],
    "telegram_change_ip_notification_enabled": false,
    "telegram_status_notification_enabled": true,
    "reboot_cron_string": "",
    "low_battery_reboot_threshold": 0,
    "no_network_reboot_timeout_seconds": 0,
    "ip_change_airplane_mode_time_seconds": 0,
    "no_network_airplane_toggle_timeout_seconds": 0,
    "tariff_notify_hours_before_expired": [],
    "no_wifi_inet_disable_wifi_timeout_seconds": 0,
    "no_wifi_connection_reboot_timeout_seconds": 0,
    "tcp_fingerprint": "",
    "ip_change_wait_unique": false,
    "ip_change_wait_unique_attempts": 0,
    "ip_change_wait_unique_lookbehind_minutes": 0,
    "ip_change_enabled": false,
    "ip_change_interval_minutes": 0,
    "macros_url": "",
    "app_restart_interval_minutes": 0,
    "connection_refresh_interval_minutes": 0
  },
  "app_data": {
    "device_info": {
      "is_root": false,
      "manufacturer": "Samsung",
      "model": "SM-A236B",
      "android_version": "14",
      "system_fingerprint": "6e1334d2",
      "system_device_id": "397ff68",
      "voice_assist_configured": true,
      "mobile_data_always_on": true,
      "owner_mode_enabled": false
    },
    "app_id": "com.iproxy.android",
    "app_version": "574",
    "app_version_patch": "1",
    "build_number": "57401",
    "agent_setup_complete": false,
    "ready_to_change_ip": true,
    "wifi_split_enabled": false,
    "last_activity_at": "2025-07-11T10:58:51.417Z",
    "installation_id": "phone-9da94533-e175-42a5-bdcb-f80b4c621117"
  }
}

2. Update connection basic info

Endpoint: POST /api/cn/v1/update-basic-info
Example:
curl --request POST \
--header "Authorization: Bearer <conn_api_key>" \
--header 'Content-Type: application/json' \
--url https:/iproxy.online/api/cn/v1/update-basic-info \
-d '{
  "name": "new_name",
  "description": "new_description"
}'
Response: 200: OK
{
    "id": "connection_id",
    "name": "new_name",
    "description": "new_description"
}

3. Update connection settings

Endpoint: POST /api/cn/v1/update-settings
Example:
curl --request POST \
--header "Authorization: Bearer <conn_api_key>" \
--header 'Content-Type: application/json' \
--url https:/iproxy.online/api/cn/v1/update-settings \
-d '{
    "prolongation_enabled": false,
    "dns": ["1.1.1.1"],
    "telegram_change_ip_notification_enabled": false,
    "telegram_status_notification_enabled": true,
    "reboot_cron_string": "30 */3 * * *",
    "low_battery_reboot_threshold": 0,
    "no_network_reboot_timeout_seconds": 0,
    "ip_change_airplane_mode_time_seconds": 0,
    "no_network_airplane_toggle_timeout_seconds": 0,
    "tariff_notify_hours_before_expired": [2, 12, 48],
    "no_wifi_inet_disable_wifi_timeout_seconds": 0,
    "no_wifi_connection_reboot_timeout_seconds": 0,
    "tcp_fingerprint": "Win10",
    "ip_change_wait_unique": false,
    "ip_change_wait_unique_attempts": 0,
    "ip_change_wait_unique_lookbehind_minutes": 0,
    "ip_change_enabled": false,
    "ip_change_interval_minutes": 0,
    "macros_url": "https:/example.com",
    "app_restart_interval_minutes": 0,
    "connection_refresh_interval_minutes": 0
}'
Quote icon
You only need to send the fields you want to update. The current values of the fields can be retrieved via a GET request.
JSON KeyTypeValidationDescription
prolongation_enabledboolEnables automatic prolongation payments.
dnslist of stringEach entry must be a valid IP address (e.g., Cloudflare ["1.1.1.1"], Google ["8.8.8.8"], or custom). Send an empty array to clear the list.Sets Global DNS.
telegram_change_ip_notification_enabledboolSends Telegram alerts when the external IP changes.
telegram_status_notification_enabledboolSends Telegram alerts for status changes.
reboot_cron_stringstringCron expression. Send an empty string to disable.Enables scheduled reboots.
low_battery_reboot_thresholdfloat0 ≤ value ≤ 95. Send 0 to disable.Reboots the device if the battery level drops below the specified percentage.
no_network_reboot_timeout_secondsint0–3600 seconds. Send 0 to disable.Reboots the device if proxies are disconnected for the specified duration.
ip_change_airplane_mode_time_secondsint0–3600 seconds. Send 0 to disable.Sets minimum time in Airplane Mode to change IP.
no_network_airplane_toggle_timeout_secondsint0–3600 seconds. Send 0 to disable.Toggles Airplane Mode if the mobile network is idle for more than the specified timeout.
tariff_notify_hours_before_expiredlist of intSend an empty array to clear all notifications.Enables payment notifications.
no_wifi_inet_disable_wifi_timeout_secondsint0–3600 seconds. Send 0 to disable.Disables Wi-Fi if no internet is detected over Wi-Fi for the specified timeout.
no_wifi_connection_reboot_timeout_secondsint0–40320 seconds (up to 7 days). Send 0 to disable.Enables automatic Wi-Fi reconnection after the specified timeout.
tcp_fingerprintstringMust be one of: none, WinXP, Win78, Win10, WinNT, Nintendo, FreeBSD, FreeBSD9, MacOS, iOS. Send an empty string to disable.Sets the device fingerprint.
ip_change_wait_uniqueboolEnables unique IP assignment based on history.
ip_change_wait_unique_attemptsint0–10. Send 0 to disable.Maximum number of attempts to acquire a unique IP.
ip_change_wait_unique_lookbehind_minutesint0–64800 minutes (up to 45 days). Send 0 to disable.IP history time window for uniqueness.
ip_change_enabledboolMaster switch for the IP change engine.
ip_change_interval_minutesint0–1439 minutes (up to 24 hours). Send 0 to disable.Minimum time between IP changes.
macros_urlstringMust be a valid URL. Send an empty string to disable.Webhook URL for MacroDroid integration.
app_restart_interval_minutesintSets the interval (in minutes) for automatic app restarts.
connection_refresh_interval_minutesintForces a connection refresh after the specified interval (in minutes).
Response: 200: OK
{
  "id": "{conn_id}",
  "prolongation_enabled": false,
  "dns": ["1.1.1.1"],
  "telegram_change_ip_notification_enabled": false,
  "telegram_status_notification_enabled": true,
  "reboot_cron_string": "30 */3 * * *",
  "low_battery_reboot_threshold": 0,
  "no_network_reboot_timeout_seconds": 0,
  "ip_change_airplane_mode_time_seconds": 0,
  "no_network_airplane_toggle_timeout_seconds": 0,
  "tariff_notify_hours_before_expired": [
    2,
    12,
    48
  ],
  "no_wifi_inet_disable_wifi_timeout_seconds": 0,
  "no_wifi_connection_reboot_timeout_seconds": 0,
  "tcp_fingerprint": "Win10",
  "ip_change_wait_unique": false,
  "ip_change_wait_unique_attempts": 0,
  "ip_change_wait_unique_lookbehind_minutes": 0,
  "ip_change_enabled": false,
  "ip_change_interval_minutes": 0,
  "macros_url": "https:/example.com",
  "app_restart_interval_minutes": 0,
  "connection_refresh_interval_minutes": 0
}

4. Modify team access

Endpoint: POST /api/cn/v1/team-access/modify
Example:
curl --request POST \
--header "Authorization: Bearer <conn_api_key>" \
--header 'Content-Type: application/json' \
--url https:/iproxy.online/api/cn/v1/team-access/modify \
-d '{
  "email": "[email protected]",
    "permissions": {
    "action_link_create": true,
    "action_link_remove": true,
    "airplane_mode_time_edit": true
  }
}'
Response: 200: OK
{
  "email": "[email protected]",
  "permissions": {
    "airplane_mode_time_edit": false,
    "authorization_pin_create": false,
    "battery_level_threshold": false,
    "connection_change_tariff": false,
    "connection_payment": false,
    "connection_remove": false,
    "description_edit": false,
    "dns_setting": false,
    "enable_unique_ip": false,
    "find_device": false,
    "fix_lte": false,
    "ip_history_view": false,
    "logs_download": false,
    "macros_url": false,
    "name_edit": false,
    "open_vpn_create": false,
    "open_vpn_view": false,
    "open_vpn_edit": false,
    "open_vpn_remove": false,
    "pof_setting": false,
    "no_network_reboot": false,
    "proxy_create": false,
    "proxy_edit": false,
    "proxy_remove": false,
    "proxy_view": false,
    "reboot_device": false,
    "repeating_ip_view": false,
    "rotation_setting": false,
    "scheduled_reboot": false,
    "sms_control": false,
    "tariff_statistic_view": false,
    "no_network_airplane_toggle_time_edit": false,
    "uptime_view": false,
    "url_change_ip_create": false,
    "url_change_ip_remove": false,
    "team_members_edit": false,
    "api_key_create": false,
    "action_link_create": true,
    "action_link_view": false,
    "action_link_remove": true,
    "basic_info_edit": false,
    "settings_edit": false,
    "connection_control": false
  }
}

5. Remove team access

Endpoint: POST /api/cn/v1/team-access/remove
Example:
curl --request POST \
--header "Authorization: Bearer <conn_api_key>" \
--header 'Content-Type: application/json' \
--url https:/iproxy.online/api/cn/v1/team-access/remove \
-d '{
  "email": "[email protected]"
}'
Response: 200: OK
{
    "email": "[email protected]"
}

6. Change connection tariff

Endpoint: POST /api/cn/v1/change-plan/{new_plan}
Example:
curl --request POST \
--header "Authorization: Bearer <conn_api_key>" \
--header 'Content-Type: application/json' \
--url https:/iproxy.online/api/cn/v1/change-plan \
-d '{
  "plan_id": "M7Fq2RKexi"
}'
Response: 200: OK
{
  "active_plan": {
    "id": "M7Fq2RKexi",
    "started_at": "2025-07-11T10:55:10.913Z",
    "expires_at": "2025-08-10T10:55:10.913Z"
  }
}

7. Get last 100 sms

Endpoint: GET /api/cn/v1/sms-history
Example:
curl --request GET \
--header "Authorization: Bearer <conn_api_key>" \
--url https:/iproxy.online/api/cn/v1/sms-history
Response: 200: OK
{
  "sms_messages": [
    {
      "id": "sms_id",
      "message": "Example message",
      "from": "Somebody",
      "from_contact": "Mike (may be empty)",
      "created_at": "2025-06-01T04:24:48Z"
    }
  ]
}

8. Command push

Endpoint: /api/console/v1/connection/{connection_id}/command-push
Example:
curl --request POST \
--url https://iproxy.online/api/console/v1/connection/{connection_id}/command-push
--header 'Authorization: Bearer <conn_api_key>'
-d '{"action":"<command_name>", "<command_name>_params": {}}'
Allowed actions:
  • refresh_fingerprint
  • refresh
  • reboot
  • changeip
  • fix_lte
  • toggle_proxy
  • find_my_device
  • debug_report
  • upgrade_app
Action with params:
  • toggle_proxy_params:
    • enabled: bool
Response: 200:
{"message": "{action} command has been sent"}

Connection API key and PIN code

1. Generate new connection PIN code

Endpoint: POST /api/cn/v1/pin-code
Example:
curl --request POST \
--header "Authorization: Bearer <conn_api_key>" \
--url https:/iproxy.online/api/cn/v1/pin-code
Response: 200: New generated PIN code
{
  "pincode": "<generated pin>",
  "expires_at": "2025-05-05T05:05:05Z"
}

expires_at is an RFC 3339 timestamp


Proxy access control

1. Create proxy access

Endpoint: POST /api/cn/v1/proxy-access
Request Body:
{
  "listen_service": "http",  // http or socks5
  "auth_type": "userpass",  // userpass or noauth
  "auth": { // optional, will be generated
    "login": "proxy_login",
    "password": "proxy_pass"
  },
  "description": "new proxy description",
  "acl_inbound_policy": "deny_except", // optional, required only if auth_type: noauth
  "acl_inbound_ips": ["127.0.0.1"],    // optional IP ACL, non-empty; required only if acl_inbound_policy is set
  "expires_at": "2026-01-01T01:01:01Z" // optional date of proxy expiry
}
expires_at is an RFC 3339 timestamp
Example:
curl --request POST \
--header "Authorization: Bearer <conn_api_key>" \
--header 'Content-Type: application/json' \
--url https://iproxy.online/api/cn/v1/proxy-access \
-d '{
"listen_service": "socks5",
"auth_type": "userpass",
"description": "new proxy description"
}'
Response: 201: A proxy access created
{
  "id": "2CiQPfoWcJ",
  "connection_id": "2W1IlyssyF",
  "description": "new proxy description",
  "listen_service": "socks5",
  "auth_type": "userpass",
  "auth": {
    "login": "username",
    "password": "superpassword"
  },
  "ip": "1.2.3.4",
  "port": 13874,
  "hostname": "x1.fxdx.in",
  "password_updated_at": "2025-07-11T18:05:18.622Z"
}

2. Update proxy access

Endpoint: POST /api/cn/v1/proxy-access/{proxy_id}/update
Request Body:
{
  "listen_service": "http",  // http or socks5
  "auth_type": "userpass",  // userpass or noauth
  "auth": {
    "login": "new_login",
    "password": "new_pass"
  },
  "description": "new proxy description",
  "acl_inbound_ips": [],  // allowed IPs, set '[]' to disable
  "expires_at": "2026-01-01T01:01:01Z"  // date of proxy expiry, set '0001-01-01T00:00:00Z' to disable
}
expires_at is an RFC 3339 timestamp

all fields are optional, only set fields are updated

Example:
curl --request POST \
--header "Authorization: Bearer <conn_api_key>" \
--header 'Content-Type: application/json' \
--url https://iproxy.online/api/cn/v1/proxy-access/{proxy_id}/update \
-d '{
"listen_service": "http",
"auth_type": "userpass",
"auth": {
  "login": "new_login",
  "password": "new_pass"
},
"description": "new description",
"acl_inbound_ips": [],
"expires_at": "0001-01-01T00:00:00Z"
}'
expires_at is an RFC 3339 timestamp
Response: 200: Updated proxy access
{
  "id": "k31kcls",
  "connection_id": "ksdfmw343",
  "description": "new description",
  "listen_service": "http",
  "auth_type": "userpass",
  "auth": {
    "login": "new_login",
    "password": "new_pass"
  },
  "ip": "1.2.3.4",
  "port": 13872,
  "hostname": "x1.fxdx.in",
  "password_updated_at": "2025-07-11T16:55:21.37Z"
}

3. List proxy accesses by connection

Endpoint: GET /api/cn/v1/proxy-access
Example:
curl --request GET \
--header "Authorization: Bearer <conn_api_key>" \
--url https://iproxy.online/api/cn/v1/proxy-access
Response: 200: List of proxy accesses
{
  "proxy_accesses": [
    {
      "id": "2CiQPfoWcJ",
      "connection_id": "2W1IlyssyF",
      "description": "new proxy description",
      "listen_service": "socks5",
      "auth_type": "userpass",
      "auth": {
        "login": "user",
        "password": "pass"
      },
      "ip": "1.2.3.4",
      "port": 13874,
      "hostname": "x1.fxdx.in",
      "password_updated_at": "2025-07-11T18:05:18.622Z"
    },
    {
      "id": "HjttgsJjG3",
      "connection_id": "2W1IlyssyF",
      "description": "new description",
      "listen_service": "http",
      "auth_type": "userpass",
      "auth": {
        "login": "new_login",
        "password": "new_pass"
      },
      "acl_inbound_policy": "deny_except",
      "acl_inbound_ips": ["1.2.3.4"],
      "ip": "3.2.1.0",
      "port": 13875,
      "hostname": "x1.fxdx.in",
      "password_updated_at": "2025-07-11T18:07:35.919Z"
    }
  ]
}
expires_at is an RFC 3339 timestamp

4. Delete proxy access

Endpoint: DELETE /api/cn/v1/proxy-access/{proxy_id}
Example:
curl --request DELETE \
--header "Authorization: Bearer <conn_api_key>" \
--url https://iproxy.online/api/cn/v1/proxy-access/{proxy_id}
Response: 200: Proxy successfully deleted
{
  "id": "4cbI8O21Rd"
}

OpenVPN access api

1. Create OpenVPN access

Endpoint: POST /api/cn/v1/ovpn-access
Request Body:
{
  "name": "new VPN name",
  "description": "new VPN description",
}
Example:
curl --request POST \
--header "Authorization: Bearer <conn_api_key>" \
--url https://iproxy.online/api/cn/v1/ovpn-access \
-d '{
  "name": "new VPN name",
  "description": "new VPN description"
}'
Response: 201: A VPN access created
{
  "status": "active",
  "name": "new VPN name",
  "description": "new VPN description",
  "expires_at": "2045-07-06T18:23:09.787673959Z",
  "dns": [],
  "id": "1InLOU8GWR",
  "connection_id": "{conn_id}"
}
expires_at is an RFC 3339 timestamp

2. List VPN accesses

Endpoint: GET /api/cn/v1/ovpn-access
Example:
curl --request GET \
--header "Authorization: Bearer <conn_api_key>" \
--url https://iproxy.online/api/cn/v1/ovpn-access
Response: 200: List of VPN accesses
{
  "ovpn_accesses": [{
    "name": "VPN name",
    "description": "VPN description",
    "status": "active",
    "dns": [],
    "id": "ovpn_id",
    "connection_id": "{conn_id}",
    "expires_at": "2026-01-01T01:01:01Z"
  }]
}
expires_at is an RFC 3339 timestamp

4. Update VPN access

Endpoint: POST /api/cn/v1/ovpn-access/{ovpn_id}/update
Request Body:
{
  "name": "VPN name",
  "description": "VPN description",
  "expires_at": "2026-01-01T01:01:01Z"
}
expires_at is an RFC 3339 timestamp.

All fields are optional, only set fields are updated

Example:
curl --request POST \
--header "Authorization: Bearer <conn_api_key>" \
--header 'Content-Type: application/json' \
--url https://iproxy.online/api/cn/v1/ovpn-access/{ovpn_id}/update \
-d '{
    "name": "VPN name",
    "description": "VPN description",
    "expires_at": "2026-01-01T01:01:01Z"
}'
expires_at is an RFC 3339 timestamp
Response: 200: Updated VPN access
{
    "name": "VPN name",
    "description": "VPN description",
    "status": "active",
    "dns": [],
    "id": "ovpn_id",
    "connection_id": "{conn_id}",
    "expires_at": "2026-01-01T01:01:01Z"
}

5. Delete VPN access

Endpoint: DELETE /api/cn/v1/ovpn-access/{ovpn_id}
Example:
curl --request DELETE \
--header "Authorization: Bearer <conn_api_key>" \
--url https://iproxy.online/api/cn/v1/ovpn-access/{ovpn_id}
Response: 200: Deleted VPN access
{
    "id": "ovpn_id"
}

Connection statistics API

1. Daily traffic details.

Endpoint: /api/cn/v1/traffic/by-day
Example:
curl --request GET \
--header "Authorization: Bearer <conn_api_key>" \
--url 'https://iproxy.online/api/cn/v1/traffic/by-day?from=2025-07-01T00%3A00%3A00Z&to=2025-08-01T03%3A00%3A00%2B03%3A00&timezone=Europe/Lisbon'
from and to query parameters should be url-encoded RFC 3339 timestamps timezone optional query parameter should be a valid timezone. Invalid and empty values are defaulted to UTC
Response: 200: Traffic stats for the requested period
{
  "total_in_bytes": 1300000, // Inbound traffic in bytes
  "total_out_bytes": 1000000, // Outbound traffic in bytes
  "daily_stats": [{
    "date": "2025-03-31T00:00:00Z",
    "in_bytes": 1000,  // Inbound traffic for the day in bytes
    "out_bytes": 1000,  // Outbound traffic for the day in bytes
  }]
}
date is an RFC 3339 timestamp

2. Hourly traffic details by port

Endpoint: /api/cn/v1/traffic/by-hour-port
Example:
curl --request GET \
--header "Authorization: Bearer <conn_api_key>" \
--url 'https://iproxy.online/api/cn/v1/traffic/by-hour-port?from=2025-07-01T00%3A00%3A00Z&to=2025-08-02T03%3A00%3A00%2B03%3A00'
from and to query parameters should be url-encoded RFC 3339 timestamps
Response: 200: Traffic stats for the requested period
{
  "port_stats": [{
    "port": "20314",
    "total_in_bytes": 1300000, // Inbound traffic in bytes
    "total_out_bytes": 1000000, // Outbound traffic in bytes
    "hourly_stats": [{
      "date": "2025-03-01T14:00:00Z",
      "in_bytes": 1000,  // Inbound traffic for the hour in bytes
      "out_bytes": 1000,  // Outbound traffic for the hour in bytes
  }]
}
date is an RFC 3339 timestamp

3. Uptime statistics

Endpoint: /api/cn/v1/uptime
Example:
curl --request GET \
--header "Authorization: Bearer <conn_api_key>" \
--url 'https://iproxy.online/api/cn/v1/uptime?from=2025-07-01T00%3A00%3A00Z&to=2025-08-02T03%3A00%3A00%2B03%3A00'
from and to query parameters should be url-encoded RFC 3339 timestamps
Response: 200: Uptime stats for the requested period
{
  "uptime": [{
    "date": "2025-03-01T14:00:00Z",
    "status": "UP"
  ]}
}
date is an RFC 3339 timestamp

4. IP history

Endpoint: /api/cn/v1/ip-history
Example:
curl --request GET \
--header "Authorization: Bearer <conn_api_key>" \
--url 'https://iproxy.online/api/cn/v1/ip-history?from=2025-03-01T00%3A00%3A00Z&to=2025-03-02T03%3A00%3A00%2B03%3A00'
from and to query parameters should be url-encoded RFC 3339 timestamps
Response: 200: IP history for the requested period
{
  "ip_history": [{
    "date": "2025-03-01T14:00:00Z",
    "ipv4": "127.0.0.1",
    "ipv6": "::1"
  ]}
}
date is an RFC 3339 timestamp

Action links API

1. Create Action Link

Endpoint: POST /api/cn/v1/actionlinks
Request Body: { "action": "reboot", "comment": "link for client AAAA" }
action string parameter is one of [reboot changeip] comment string is optional parameter
Example:
curl --request POST \
--header "Authorization: Bearer <conn_api_key>" \
--header 'Content-Type: application/json' \
--url https://iproxy.online/api/cn/v1/actionlinks \
-d '{"action": "changeip", "comment": "link for client AAAA"}'
Response: 201: A link created
{
    "id": "xyzXYZ"
}

2. Get List of Action Links

Endpoint: GET /api/cn/v1/actionlinks action parameter is one of [reboot changeip]
Example:
curl --request GET \
--header "Authorization: Bearer <conn_api_key>" \
--url https://iproxy.online/api/cn/v1/actionlinks
Response: 200: List of links retrieved
{
    "action_links": [{
        "id": "xyzXYZ",
        "link": "https://i.fxdx.in/actionlinks/do/reboot/xyzXYZ",
        "action": "changeip",
        "connection_id": "abcdABCD",
        "comment": "link for client AAAA",
        "created_at": "2025-03-19T13:06:30Z"
    }]
}
created_at is an RFC 3339 timestamp

3. Delete Action Link

Endpoint: DELETE /api/cn/v1/actionlinks/{link_id}
Example:
curl --request DELETE \
--header "Authorization: Bearer <conn_api_key>" \
--url https://iproxy.online/api/cn/v1/actionlinks/{link_id}
Response: 200 OK
{
    "id": "xyzXYZ"
}

4. Execute Action Link

Note for better usability:
  • No authentication needed, don't share to unknown persons
  • It's a simple GET request, be careful with the reboot action!
Endpoint: GET https://i.fxdx.in/actionlinks/do/{action}/{link_id}
Example:
curl --request GET \
--url https://i.fxdx.in/actionlinks/do/{action}/{link_id}
Response: 200 OK
{
    "message": "{action} command has been sent"
}