Introduction

This documentation aims to provide all the information you need to work with our API.

Base URL

https://urbanshieldvpn-api.com

Authenticating requests

This API is not authenticated.

Client Apps v3

API for Client Application v3

Authentication Request

POST
https://urbanshieldvpn-api.com
/v3/auth

Authenticates the user with given credentials. If everything is okay, you'll get Success Response.

The request will fail with a response of Invalid Credentials.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Response Fields

Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/auth" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"username\": \"testing\",
    \"password\": \"testing\",
    \"accountId\": \"test-test\",
    \"deviceDetails\": {
        \"type\": \"Window|Mac|Android|iOS\",
        \"name\": \"Someone\'s iPhone\",
        \"id\": \"<device_id>\"
    }
}"
Example response:
{
    "response": {
        "auth": true,
        "active": true,
        "expired": false,
        "allowLogin": false,
        "expiry_date": "dd-mmm-yyyy",
        "ApiToken": "<token>",
        "totalSessionsAllowed": 5,
        "loggedInSessions": 0,
        "timestamp": 0,
        "is_paid": true,
        "activeSessions": [
            {
                "tokenId": 1,
                "details": {
                    "id": "<device_id>",
                    "name": "<device_name>",
                    "type": "<device_type>"
                },
                "last_used_at": "2022-04-23T13:57:31.000000Z",
                "currentDevice": true
            }
        ],
        "email": "<email>",
        "plan": "Premium"
    },
    "message": "Account logged in Successfully",
    "state": true
}
{
    "response": {
        "auth": true,
        "active": true,
        "expired": false,
        "allowLogin": false,
        "vpn_username": "<username>",
        "vpn_password": "<password>",
        "expiry_date": "dd-mmm-yyyy",
        "ApiToken": "<token>",
        "totalSessionsAllowed": 5,
        "loggedInSessions": 0,
        "timestamp": 0,
        "is_paid": true,
        "activeSessions": [
            {
                "tokenId": 1,
                "details": {
                    "id": "<device_id>",
                    "name": "<device_name>",
                    "type": "<device_type>"
                },
                "last_used_at": "2022-04-23T13:57:31.000000Z",
                "currentDevice": true
            }
        ],
        "email": "<email>",
        "plan": "Premium"
    },
    "message": "Device Limit Reached. Please Log out One to Continue",
    "state": true
}
{
    "auth": false,
    "active": false,
    "expired": false,
    "expiry_date": ""
}

Server List Request

GET
POST
https://urbanshieldvpn-api.com
/v3/servers-list
requires authentication

Returns List of Servers.

The request will fail with a 402 error, and a response of Unauthorized.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request GET \
    --get "https://urbanshieldvpn-api.com/v3/servers-list" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
     "servers": [
            {
                "id": 1,
                "name": "Frankfurt - Germany",
                "ip": "0.0.0.0",
                "port": 443,
                "flag": "ic_list_country_de",
                "premium": true,
                "country": "Germany",
                "country_code": "de"
                "dns1": "8.8.8.8",
                "dns2": "8.8.8.8",
            }
      ],
      "dnsServers": {"dns1": "8.8.8.8", "dns2": "8.8.4.4" },
      "openvpn": {
             "certificate": certificate,
             "ports": [{
                 "protocol": "tcp",
                 "port": 443
             }]
      },
      "wireguard": [ 51820 ]
}

Retrieves the notifications from the AppNotification model and returns them as a JSON response.

GET
https://urbanshieldvpn-api.com
/v3/app/notification

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request GET \
    --get "https://urbanshieldvpn-api.com/v3/app/notification" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "message": "Unauthorized"
}

User Details Request

GET
https://urbanshieldvpn-api.com
/v3/details
requires authentication

Get Details of Loggedin User

The request will fail with a 401 error if session is already revoked

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request GET \
    --get "https://urbanshieldvpn-api.com/v3/details" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
     "expired" : true,
     "totalSessionsAllowed": 5,
     "loggedInSessions": 0,
     "activeSessions": [{
         "tokenId": <token_id>,
         "details": {
             "id": "<device_id>",
             "name": "<device_name>",
             "type": "<device_type>"
         },
         "last_used_at": "2022-05-13T15:35:23.000000Z",
         "currentDevice": true
     }]
 }
{
    "message": "Unauthenticated"
}

Logout Request

POST
https://urbanshieldvpn-api.com
/v3/signout
requires authentication

Revokes Current Logged-in Session

The request will fail with a 401 error if session is already revoked

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/signout" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "message": "User logged out Successfully."
}
{
    "message": "Unauthenticated"
}

Logout Device Request

POST
https://urbanshieldvpn-api.com
/v3/logout/{tokenId}
requires authentication

Revokes Session based on ID

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

tokenId
integer
required

ID of Device to be Logged out

The request will fail with a 401 error if session is already revoked

Example:
20
Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/logout/20" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
     "activeSessions": [{
         "tokenId": <token_id>,
         "details": {
             "id": "<device_id>",
             "name": "<device_name>",
             "type": "<device_type>"
         },
         "last_used_at": "2022-05-13T15:35:23.000000Z",
         "currentDevice": true
     }]
 }
{
    "message": "Unauthenticated"
}

Logout All Device Request

POST
https://urbanshieldvpn-api.com
/v3/logout-all
requires authentication

Revokes All Sessions

The request will fail with a 401 error if session is already revoked

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/logout-all" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
     "activeSessions": [{
         "tokenId": <token_id>,
         "details": {
             "id": "<device_id>",
             "name": "<device_name>",
             "type": "<device_type>"
         },
         "last_used_at": "2022-05-13T15:35:23.000000Z",
         "currentDevice": true
     }]
 }
{
    "message": "Unauthenticated"
}

Wireguard Connection Request

POST
https://urbanshieldvpn-api.com
/v3/connect-to-vpn
requires authentication

Add Public Key to Wireguard Server.

The request will fail with a 401 error if session is already revoked

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/connect-to-vpn" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"country\": \"uyphx\",
    \"city\": \"hic\"
}"
Example response:
[{
     'ip': 0.0.0.0,
     'country' => 'Germany',
     'city' => Frankfurt,
     'wg' => [{
         'publicKey' => "ijhasfd876089798uiohljkafsdd98s",
         'port' => 51820,
         'allowedIps' => '0.0.0.0/0',
     }
}]
{
    "message": "Unauthenticated"
}

Delete Request

POST
https://urbanshieldvpn-api.com
/v3/delete
requires authentication

Delete Customer Account.

The request will fail with a 401 error if session is already revoked

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/delete" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
  'message': 'Account Deleted Successfully'
}
{
    "message": "Unauthenticated"
}

Register Device for Notification Request

POST
https://urbanshieldvpn-api.com
/v3/notification/token
requires authentication

Register Device for Firebase Notifications.

The request will fail with a 401 error if session is already revoked

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/notification/token" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"token\": \"ezfgpajcnwldrhemo\"
}"
Example response:
{
  'message': 'Token Updated Successfully'
}
{
    "message": "Unauthenticated"
}

Update Password Request

POST
PATCH
https://urbanshieldvpn-api.com
/v3/update-password
requires authentication

Update Customer Password..

The request will fail with a 401 error if session is already revoked

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/update-password" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
  'message': 'Password updated successfully'
}
{
    "message": "Unauthenticated"
}

Set Password Request

POST
https://urbanshieldvpn-api.com
/v3/set-password

Set Password of Customer.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/set-password" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"[email protected]\",
    \"password\": \"L_sqG9+J%\",
    \"confirm_password\": \"adekeowgeunopqxipfmxonllryfndnhdfjoqmcmonmmenirbgwpnzawzhcyclo\"
}"
Example response:
{
  'state': true,
  'message': "Password Updated Successfully"
}
{
    "message": "Unauthenticated"
}

Verify OTP Request

POST
https://urbanshieldvpn-api.com
/v3/verify-otp

Verify OTP of Customer.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/verify-otp" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"[email protected]\",
    \"otp\": \"fqegaa\"
}"
Example response:
{
  'state': true,
  'message': 'User Verified. Please proceed to set Password.'
  'token': '<TOKEN>'
}
{
    "message": "Unauthenticated"
}

Reset Password Request

POST
https://urbanshieldvpn-api.com
/v3/forget-password

Email Customer to reset Password.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/forget-password" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"[email protected]\"
}"
Example response:
{
  'state': true,
  'message': 'A Verification Code has been sent to your email. Please check your Email.'
}
{
    "message": "Unauthenticated"
}

Reset Password Request

POST
https://urbanshieldvpn-api.com
/v3/reset-password

Email Customer to reset Password.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/reset-password" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"[email protected]\"
}"
Example response:
{
  'state': true,
  'message': 'A Verification Code has been sent to your email. Please check your Email.'
}
{
    "message": "Unauthenticated"
}

IAP Plans Request

GET
https://urbanshieldvpn-api.com
/v3/plans

Plans Identifier for Apps

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

platform
string
Example:
android|ios
Example request:
curl --request GET \
    --get "https://urbanshieldvpn-api.com/v3/plans?platform=android%7Cios" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[{
     'plans': [{
         'identifier':'com.example.monthly',
         'days': 30,
         'save': 0
     }],
     'subtitle': ''
}]

Restore Purchase Request

POST
https://urbanshieldvpn-api.com
/v3/restore-purchase

Restore Purchase of User on the basis of Account ID.

The request will fail with a 401 error if session is already revoked

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/restore-purchase" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"UUID\": \"86bea3e4-cd21-3b09-bf5d-ad1b983f4aed\"
}"
Example response:
<JSON_OF_AUTH_RESPONSE>

Get Country List

GET
https://urbanshieldvpn-api.com
/v3/country-list

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request GET \
    --get "https://urbanshieldvpn-api.com/v3/country-list" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
  'country': [{
     'code': 'de',
     "name": "Germany"
   }]
}

Location Request

GET
https://urbanshieldvpn-api.com
/v3/location/{ip?}

Get Location of Current IP or IP Provided

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

ip
string
Example:
ipsum
Example request:
curl --request GET \
    --get "https://urbanshieldvpn-api.com/v3/location/ipsum" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[{
     'code': '<code>',
     'country': '<country>',
     'city': '<city>',
     'latitude': '<latitude>',
     'longitude': '<longitude>',
     'ip': '<ip>',
     "isp": '<isp>',
}]
{
    "message": "Unauthenticated"
}

TV Login Request

POST
https://urbanshieldvpn-api.com
/v3/tv/generate

Generate Code for TV Login to display on TV and then use it on website.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/tv/generate" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
  'code': 'OXVA-78I9',
  'token': '<TOKEN>'
}

Poll Request for TV Login

POST
https://urbanshieldvpn-api.com
/v3/tv/poll

Poll every few seconds to check if User has Logged in on Website.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/tv/poll" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"tvCode\": \"ut\"
}"
Example response:
{
  'is_login': true,
  'message': 'Logged in Successfully',
  'state': true,
  'response': '<JSON_OF_AUTH_API>'
}

Login using Firebase Request

POST
https://urbanshieldvpn-api.com
/v3/sso/firebase

Login User on the basis of Firebase ID Token

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/sso/firebase" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"idToken\": \"exercitationem\"
}"
Example response:
<JSON_OF_AUTH_RESPONSE>

VPN Accounts v3

API for VPN Accounts Management

Find Account Request

GET
https://urbanshieldvpn-api.com
/v3/customers/find/{type}/{value}
requires authentication

Get details of account by username, email

The request will fail with a 401 error if auth token is revoked

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

type
string
required

Type of Search Column

Example:
username
value
string
required

Value to be searched

Example:
testing
Example request:
curl --request GET \
    --get "https://urbanshieldvpn-api.com/v3/customers/find/username/testing" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "id": 1,
    "is_active": true,
    "fta": false,
    "username": "testing",
    "password": "testing",
    "status": "inactive",
    "expiry_text": "30 Day(s) left",
    "expiry_date": null,
    "devices": 2,
    "expiry_timestamp": null,
    "created_date": "Jan 31, 1970 00:00:00 AM"
}
{
    "message": "Unauthenticated"
}
{
    "message": "No Data Found for Query"
}

Create Account Request

POST
https://urbanshieldvpn-api.com
/v3/customers
requires authentication

Creates New VPN Account for VPN Connection. One of duration or expiry_date parameters is necessary. if the duration is set expiry date of account will be set once account first time connects to vpn. or you can set expiry date directly.

The request will fail with a 401 error if auth token is revoked

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://urbanshieldvpn-api.com/v3/customers" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"duration\": 13,
    \"expiry_date\": 17,
    \"devices\": 11,
    \"firstname\": \"nklkuzn\",
    \"lastname\": \"khqzlflfs\",
    \"email\": \"[email protected]\",
    \"username\": \"testing\",
    \"password\": \"testing\",
    \"group\": 16,
    \"name\": \"aut\"
}"
Example response:
{
    "state": "success",
    "message": "Account Created Successfully",
    "data": {
        "id": 1,
        "is_active": true,
        "fta": false,
        "username": "testing",
        "password": "testing",
        "status": "inactive",
        "expiry_text": "30 Day(s) left",
        "expiry_date": null,
        "devices": 2,
        "expiry_timestamp": null,
        "created_date": "Jan 31, 1970 00:00:00 AM"
    }
}
{
    "message": "Unauthenticated"
}
{
    "message": "The given data was invalid.",
    "errors": {
        "duration": [
            "The duration field is required."
        ],
        "expiry_date": [
            "The expiry date field is required."
        ],
        "username": [
            "The username field is required."
        ],
        "password": [
            "The password field is required."
        ]
    }
}

Get Account Request

GET
https://urbanshieldvpn-api.com
/v3/customers/{id}
requires authentication

Get Details of Account

The request will fail with a 401 error if auth token is revoked

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the customer.

Example:
1
Example request:
curl --request GET \
    --get "https://urbanshieldvpn-api.com/v3/customers/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "id": 1,
    "is_active": true,
    "fta": false,
    "username": "testing",
    "password": "testing",
    "status": "inactive",
    "expiry_text": "30 Day(s) left",
    "expiry_date": null,
    "devices": 2,
    "expiry_timestamp": null,
    "created_date": "Jan 31, 1970 00:00:00 AM"
}
{
    "message": "Unauthenticated"
}
{
    "message": "No Data Found for Query"
}

Update Account Request

PUT
PATCH
https://urbanshieldvpn-api.com
/v3/customers/{id}
requires authentication

Update Account Details

The request will fail with a 401 error if auth token is revoked

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the customer.

Example:
1

Body Parameters

Example request:
curl --request PUT \
    "https://urbanshieldvpn-api.com/v3/customers/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"firstname\": \"wnuowbasgpjiigglwpv\",
    \"lastname\": \"xtp\",
    \"email\": \"[email protected]\",
    \"password\": \"testing\",
    \"devices\": 3,
    \"name\": \"molestias\"
}"
Example response:
{
    "state": "success",
    "message": "Account Updated Successfully",
    "data": {
        "id": 1,
        "is_active": true,
        "fta": false,
        "username": "testing",
        "password": "testing",
        "status": "inactive",
        "expiry_text": "30 Day(s) left",
        "expiry_date": null,
        "devices": 2,
        "expiry_timestamp": null,
        "created_date": "Jan 31, 1970 00:00:00 AM"
    }
}
{
    "state": "error",
    "message": "Unexpected Error Occurred."
}
{
    "message": "Unauthenticated"
}
{
    "message": "No Data Found for Query"
}

Delete Request

DELETE
https://urbanshieldvpn-api.com
/v3/customers/{id}
requires authentication

Delete VPN Account.

The request will fail with a 401 error if session is expired

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the customer.

Example:
1
Example request:
curl --request DELETE \
    "https://urbanshieldvpn-api.com/v3/customers/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "state": "success",
    "message": "Expiry Date updated Successfully."
}
{
    "state": "error",
    "message": "Unexpected Error Occurred."
}
{
    "message": "Unauthenticated"
}
{
    "message": "No Data Found for Query"
}

Add Duration Request

PUT
https://urbanshieldvpn-api.com
/v3/customers/{customer_id}/duration/add
requires authentication

Adds Duration to Expiry Date of Account.

The request will fail with a 401 error if session is expired

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

customer_id
integer
required

The ID of the customer.

Example:
1

Body Parameters

Example request:
curl --request PUT \
    "https://urbanshieldvpn-api.com/v3/customers/1/duration/add" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"duration\": \"voluptates\"
}"
Example response:
{
     "state": "success",
     "message": "Expiry Date updated Successfully.",
     "data": {
         ""id": 1,
         "is_active": true,
         "fta": false,
         "username": "testing",
         "password": "testing",
         "status": "inactive",
         "expiry_text": "30 Day(s) left",
         "expiry_date": null,
         "devices": 2,
         "expiry_timestamp": null,
         "created_date": "Jan 31, 1970 00:00:00 AM"
     }
 }
{
    "message": "Unauthenticated"
}
{
    "message": "No Data Found for Query"
}

Remove Duration Request

PUT
https://urbanshieldvpn-api.com
/v3/customers/{customer_id}/duration/remove
requires authentication

Removes Duration From Account.

The request will fail with a 401 error if session is expired

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

customer_id
integer
required

The ID of the customer.

Example:
1

Body Parameters

Example request:
curl --request PUT \
    "https://urbanshieldvpn-api.com/v3/customers/1/duration/remove" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"duration\": \"in\"
}"
Example response:
{
    "state": "success",
    "message": "Expiry Date updated Successfully.",
    "data": {
        "id": 1,
        "is_active": true,
        "fta": false,
        "username": "testing",
        "password": "testing",
        "status": "inactive",
        "expiry_text": "30 Day(s) left",
        "expiry_date": null,
        "devices": 2,
        "expiry_timestamp": null,
        "created_date": "Jan 31, 1970 00:00:00 AM"
    }
}
{
    "message": "Unauthenticated"
}
{
    "message": "No Data Found for Query"
}

Update Expiry Request

PUT
https://urbanshieldvpn-api.com
/v3/customers/{customer_id}/expiry
requires authentication

Updates Expiry of Account.

The request will fail with a 401 error if session is expired

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

customer_id
integer
required

The ID of the customer.

Example:
1

Body Parameters

Example request:
curl --request PUT \
    "https://urbanshieldvpn-api.com/v3/customers/1/expiry" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"timestamp\": 12
}"
Example response:
{
    "state": "success",
    "message": "Expiry Date updated Successfully.",
    "data": {
        "id": 1,
        "is_active": true,
        "fta": false,
        "username": "testing",
        "password": "testing",
        "status": "inactive",
        "expiry_text": "30 Day(s) left",
        "expiry_date": null,
        "devices": 2,
        "expiry_timestamp": null,
        "created_date": "Jan 31, 1970 00:00:00 AM"
    }
}
{
    "message": "Unauthenticated"
}
{
    "message": "No Data Found for Query"
}

Update Status Request

PUT
https://urbanshieldvpn-api.com
/v3/customers/{customer}/{status}
requires authentication

Update is_active parameter of Account.

The request will fail with a 401 error if session is expired

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

customer
string
required

The customer.

Example:
sit
status
string

New State of Account

Example:
true|false
Example request:
curl --request PUT \
    "https://urbanshieldvpn-api.com/v3/customers/sit/true|false" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
     "state": "success",
     "message": "Account Activated",
 }
{
     "state": "error",
     "message": "Unexpected Error Occurred.",
 }
{
    "message": "Unauthenticated"
}
{
    "message": "No Data Found for Query"
}