All of the API routes require headers with the token key.
The token key should be included in the Authorization HTTP header.
The key should be prefixed by the literal "Token" string, whitespace separating the two strings.
Proxidize API Usage Instructions
Dashboard API:
Enable Critical Mode (Proxidize Business Only)
Critical Mode removes the dashboard's admin name, live chat button, and key device identifiers to ensure all security measures are met.
GET api/crit_mode
Parameters:
a. toggle: Accepts the keywords enable or disable only.
b. key: The last 5 characters from the Proxidize license key.
Examples:
Enable Critical Mode: http://example.com/api/crit_mode?toggle=enable&key=Ffx!r
Disable Critical Mode:http://example.com/api/crit_mode?toggle=disable&key=Ffx!r
Response: Successfully enabled/disabled critical mode
Errors:
1. Invalid toggle value or incorrect key:
"ERROR: Invalid request"
2. API Error:
"There was an error handling your request"
Modems' Operations API
Retrieve Modem Information
GET /api/getinfo
Example: http://localhost/api/getinfo
Response: JSON Object with all modem information.
Rebooting a Specific Modem
GET /api/reboot_modem?index=MODEM_INDEX
This will reboot modem with index=1
Response: Status message
Rotate API:
Rotate All Modems
GET /api/rotate
Example: http://localhost/api/rotate
Response: Status message
Rotate a Specific Modem
The authorization token should be included in the header.
GET /api/change_ip?index=MODEM_INDEX
Example: http://localhost/api/change_ip?index=1
This will rotate modem with index=1
Response: Status message
Rotate Specific Modem With Rotation Token
This option should be enabled from the Proxidize web interface by setting a custom token.
GET /api/change_ip?index=MODEM_INDEX&rtoken= ROTATION_API_TOKEN
Example: http://localhost/api/change_ip?index=1&rtoken=johndoe123
This rotates modem with index=1 authenticated by the custom set rotation token.
Response: Status message
Rotate a Shared Proxy
GET /api/sproxy/rotate
Parameters:
proxy_port: is the shared proxy's port
proxy_pass: is the password of the proxy
Set Custom Rotation Interval
GET /api/custom_rot?index=DONGLE_INDEX&day=VALUE&hour=VALUE&min=VALUE
Index (required): Can be set to a specific modem index or the keyword "all" to set the same rotation value for all plugged modems.
Interval Parameters (Only use one of them at a time):
Day: rotation value in days; minimum is 0 maximum is 29
Hour: rotation value in hours; minimum is 0 maximum is 22
Min: rotation value in minutes; minimum is 0 maximum is 58
Examples:
This sets the modem with index 5 to rotate every 2 days.
This sets all modems to rotate every 8 hours.
Response: Status message
SMS API
View SMS for a Specific Modem
GET /api/sms/get?index=MODEM_INDEX
Example: http://localhost/api/sms/get?index=1
This returns all the received SMS messages for modem with index=1Response: JSON Object containing SMS messages with their details (date, sender's phone, message and content)
Send SMS From a Modem to Any Phone Number
GET /api/sms/send?index=MODEM_INDEX&phone=PHONE&message=MESSAGE
This sends the message "Hello World" to the phone number +123456789 from modem with index=1
Response: Status message
Delete A Single SMS Message
GET api/delete_sms?sms_id=SMS_ID&modem_index=Modem_index
This deletes SMS with sms_id=22 from modem with index=5
Response: Delete SMS requested for message id XXX on modem index XXX
Error: There was an error deleting SMS message(s).
Delete Multiple SMS Messages:
Note: Separate SMS IDs with a comma. You can get the SMS IDs from the "Message ID" column on your SMS page.
GET api/delete_sms?sms_id=SMS_ID1,SMS_ID2,SMS_ID3&modem_index=Modem_index
This deletes SMS messages with sms_id=22, 25, 25, and 99 on modem with index=5
Response: Successfully deleted all SMS messages.
Error: There was an error deleting SMS message(s).
Get SMS by Modem's Phone Number (Proxidize Business Only)
Parameters: Modem's phone number
GET api/sms/fetch_sms_phone_number
Responses: JSON response with SMS from the provided number.
{ "phone_number": "1234", "modem_index": XX, "message": "SMS messages fetched successfully.", "sms_messages": [ { "date": "04-02-2023 04:21:54", "phone": [ "XXXXXXXXX" ], "content": "Example API message", "sms_id": 51251, "sms_contact_id": 1, "timestamp": 1675484514.0 } ] }
Errors:
Phone number is incorrect/not found
{ "phone_number": "1234", "modem_index": XX, "message": "No modem was found with the specificed phone number: XXXXX", "sms_messages": [] }
API Error - Incorrect syntax or authorization:{ "phone_number": "1234", "modem_index": XX, "message": "There was an error fetching SMS messages.", "sms_messages": { "phone": "", "content": "", "date": "", "sms_id": "" } }
Shared Proxies API
Retrieve All Shared Proxies Information
GET /api/shared_proxy/
Example: http://localhost/api/shared_proxy
Response: JSON Object containing a shared proxy
Add Shared Proxy
GET /api/shared_proxy/add?
Parameters:
index: The modem index
proxy_type: "HTTP" or "SOCKS"
auth_type: "UserAuth" or "IPAuth"
If UserAuth was selected then you will have to fill in the following parameters:
user: authentication username.
password: authentication password.
If IPAuth was selected:
IP: allowed IP/s. Multiple IP addresses can be inserted and separated with a comma
Optional parameters:
comment: comments for the proxy
port: port to use. Leave empty for a random port
bandwidth: bandwidth (speed) limit in Mb/s
whitelist: Allow proxy to visit these websites only (separate multiple values by a comma)
blacklist: Deny proxy from visiting these websites (separate multiple values by a comma)
traffic_limit_amount: Limit the proxy usage value in MB
traffic_limit_duration: Duration of the limit. Values should be one of (day, week, month)
Note: traffic_limit_amount and traffic_limit_duration need to both be filled to use limit features.expire_date: expire date for the proxy in the format (%Y-%m-%d)
Delete All Shared Proxies and Clear Config Files
GET /api/shared_proxy/delete
Example: http://localhost/api/shared_proxy/delete
Response: Status message
Delete Specific Shared Proxy From Database
GET /api/shared_proxy/delete?port=PORT
Example: http://localhost/api/shared_proxy/delete?port=35501
Response: Status message
Error: There was an error handling your request.
Reasons:
Your request is not in the correct syntax.
The modem is unreachable or offline.