Pango Platform
HomeConsole
  • What is Pango Developer Platform
  • Getting started
    • Sign up on the Management Console
    • Create a new project
    • Switch projects
    • Change console settings
    • Edit your profile
    • Try out the demo app
    • Keep exploring
    • Deprecation and Sunset
  • Console details
    • Dashboard
      • General
      • Location loading
    • Users
      • User page
    • Active sessions
    • Network
      • Countries
      • Locations
      • Pools
        • Optimal location
        • Location rules
    • Settings
      • General
        • Project config description (JSON format)
          • Server selector (JSON format)
          • Request selector (JSON format)
      • Authentication methods
        • Auth Plugin requirements
      • VPN
        • General
        • VPN Bypass list
        • Client Networks
      • Member
    • Export Data
    • Log
  • SDK
    • Unified VPN SDK
      • Features
        • Personal Bridge
      • Tunnel Vision and Tunnel Crack Prevention
      • Unified VPN SDK Feature Comparison By Platform
    • Unified VPN SDK for Android
      • Setup
        • Application Setup
        • Proguard Rules, Notification, and Analytics Configurations
        • Backend URL Configuration
      • Usage
        • Initialization
        • VPN Interface
        • Backend interface
      • Features
        • Hydra Protocol
          • Location profile (Hydra only)
        • Custom sdk dependencies
        • Deferred VPN Service Initialization
        • Authentication
        • Client Network List (CNL)
        • OpenVPN transport
        • Wireguard Transport
        • Reconnection strategy
        • Single Protocol SDK
        • Killswitch
        • Domain route via VPN
        • Process route via VPN
        • Process Bypass
        • Domain Bypass
        • Traffic rules
        • VPN Node DNS Configuration
        • Multihop
          • Optimal Location
      • Exceptions
      • Version migration
      • Changelog
    • Unified VPN SDK for Apple
      • Setup
        • Application Setup
        • Network Extension Setup
          • Network Extension Setup for tvOS
        • Backend URL Configuration
      • Usage
        • Single Protocol SDK
        • Unified SDK
        • Logging
        • Decoding Encoded VPN SDK Logs
        • Analytics Configuration
      • Features
        • Deferred VPN Service Initialization
        • Authentication
        • Wireguard Transport
        • Reconnection strategy
        • Killswitch
        • Domain Bypass
        • Multihop
          • Optimal Location
        • Client Network List (CNL)
        • Domain route via VPN
      • Changelog
      • API Reference
    • IPSEC VPN SDK for Apple
    • Unified VPN SDK for Windows
      • Setup
        • Backend URL Configuration
        • Service command line arguments
        • ARM Platform Support
      • Usage
        • CoreAPI
        • Events
        • Generating a Unique Device Identifier
        • Error processing
        • Pipe Messaging
      • Features
        • Traffic protection
          • Killswitch
          • Prevent IP Leaks
          • Block Local Networks
        • Other
          • Firewall
            • DNS Monitor
            • Process Bypass
            • Domain Bypass
            • Process route via VPN
            • Domain route via VPN
          • Throttling
          • Optimal Location
          • Common issues
        • Hydra Protocol
          • CustomDNS, UserDNS, MultiHop, VpnProfiles
        • OpenVPN Protocol
        • Wireguard Protocol
        • IPSec Protocol
      • Collecting Debug Logs
      • Changelog
    • Unified VPN SDK for Routers
      • SDK. Shared library.
      • Configuration Interface (CI)
        • Unix Domain Sockets CI
        • REST API CI
  • REST API
    • Partner API
  • Sample applications
    • Unified VPN SDK demo for Windows
    • Hydra VPN SDK demo for iOS
    • IPSEC VPN SDK demo for iOS
    • Unified VPN SDK demo for Android
    • Hydra VPN SDK demo for OpenWRT
    • OpenVPN configuration file
  • Resources
    • Use cases
      • Public VPN
      • Business VPN
        • Creating a Business VPN Project
        • Wi-Fi Security for Business
      • Application anti-blocking
    • How-to
      • Create a Firebase project for User Authentication
      • AWS CloudFront Distribution of the Platform URL
      • How can I get Shared Secret key from iTunes Connect for In-App Purchase
  • FAQ
    • General
      • VPN Platform Flow
      • What data is collected by the Platform?
      • What analytic data is collected by your SDK?
      • How the Platform restricts access to our data?
      • Why DNS Leak tests often indicate positive result?
      • Do we need to perform endpoint health checks?
      • How is the VPN exit node found?
      • How are streams re-marked if VPN is enabled/disabled on an active flow?
      • Is there a maximum number of supported devices?
      • Are both IPv4 and IPv6 supported?
      • What is the MTU of the tunnel?
      • Are any redundancy measures in terms of reliability provided?
      • Is there any load balancing?
      • Do you block broadcast and multicast to/from the VPN?
    • List of Open Source libs
Powered by GitBook
On this page
  • ResponseResult
  • Success codes:
  • Client side error codes:
  • Service side error codes:
  • Backend server error codes:
  • OperationalError
  • Success codes:
  • Сommon errors:
  • Hydra protocol errors:
  • Wireguard personal bridge errors:
  • Exceptions

Was this helpful?

  1. SDK
  2. Unified VPN SDK for Windows
  3. Usage

Error processing

SDK can return error codes in response result, send ErrorOccured event and throw SdkException.

ResponseResult

Result of the request processing by the UnifiedSDK service.

Success codes:

  • None - no result, default value that never should come from the service.

  • Ok - request processed successfully.

  • Unlimited - current user traffic limit is unlimited.

Client side error codes:

  • ConnectionTimeout - cannot connect to the service during timeout.

  • Timeout - SDK service did not respond within the specified timeout interval (3 minutes).

  • TransportError - transport error between client and server.

  • TransportNotAuthorized - the client pipe is not authorized to connect.

Service side error codes:

  • ServiceNotInitialized - service is not initialized.

  • NotResponding - VPN node server is not responding.

  • Error - request processing failed by any reason.

  • TooManyRequests - SDK service cannot process the command because the same process is in progress or already done. From service this error occurs only for StartVpn and StopVpn requests.

  • NoInternetConnection - request processing failed because it detected broken internet connection through the primary network adapter.

  • InvalidUri - URI parameter has invalid format.

Backend server error codes:

  • NotAuthorized - the client passed has an invalid Auth token.

  • DevicesExceed - device limit exceed.

  • NotFound - backend server returned 404 error.

  • Invalid - invalid data.

  • Forbidden - backend server returned 403 error.

  • ServerUnavailable - backend server is unavailable.

  • SessionsExceed - session limit exceed.

  • TrafficExceed - account traffic limit exceed.

  • UnAuthorized - unauthorized response.

  • InternalServerError - backend server returned 500 error.

  • InvalidPurchase - something went wrong with purchase.

  • UserSuspended - user activity suspended.

  • BadRequest - backend server returned 400 error.

  • OauthError - open authenticator error.

  • InvalidResponse - invalid response from server (i. e. html instead of json).

  • RequestTimeout - backend server did not respond within the specified timeout interval.

  • RequestLimitExceed - backend request limit exceed.

  • CarrierDisabled - carried disabled on backend.

  • AuthFailed - backend authentication failed.

  • InvalidDeviceId - invalid device identifier.

  • FeatureNotFound - feature not found.

  • UnsupportedVersion - unsupported version.

  • SessionTrafficExceed - session traffic exceed.

  • SessionNotFound - session not found.

  • ServerNotAnswering - cannot connect to the backend server.

OperationalError

Service sends operational error codes in ErrorOccured event.

Success codes:

  • None = 0 - no error. Occurs when service reset the last error on tunnel start.

Сommon errors:

  • Broken = 181 - tunnel broken. Occurs when connected tunnel unexpectedly broked by unknown reason.

  • Connect = 182 - tunnel connection failed.

  • DcnBlockedBw = 191 - Hydra or OpenVpn tunnel was broken by the server-side because traffic limit exceeded.

  • StartVpnFailed = 8192 - tunnel connection failed. Details can be found in the error message.

  • DisconnectedBeforeConnected = 8193 - tunnel connection failed because tunnel unexpectedly disconnected during connection without any errors.

  • ConnectionTimeout = 8194 - tunnel stucked into Connecting state and aborted by timeout.

  • DisconnectedAfterStart = 8195 - tunnel was connected successfully but unexpectedly disconnected during 10 sec after start without any errors.

  • StoppedAfterStart = 8196 - tunnel client reported Connected but service cannot find active network adapter. Usually occurs when tunnel client crashes right after a successfully connection.

  • TunnelExited = 8197 - tunnel client was unexpectedly terminated.

  • PrimaryNetworkInterfaceChanged = 8198 - primary network interface changed but SDK doesn't support hot-switch between networks. We recommend to reconnect tunnel with the same credentials when this error occured.

  • TrafficLeak = 8199 - traffic is leaking outside the tunnel. Occurs when routing table was changed by the third-side.

  • TunnelBroken = 8200 - occurs when tunnel is connected but traffic is not going through the tunnel during 30 seconds. That means that all health check requests through the tunnel were failed with error.

  • TunnelProcessStartFailed = 8201 - service cannot start tunnel client process by any reason.

  • InvalidConfiguration = 8202 - error occurs when StartVpnRequest validation failed.

  • InvalidTunnelNetworkIndefaceIndex = 8203 - tunnel successfully connected but SDK service cannot determine the tunnel network adapter.

  • StopVpnFailed = 8204 - service cannot stop a tunnel by any reason.

  • WfpSessionCreationFailed = 8205 - error occurs when SDK service cannot create Windows Filtering Platform session for tunnel traffic protection.

  • ConnectionCanceled = 8206 - connection process was successfully canceled by client application request.

  • NoInternetConnection = 8208 - tunnel error occurred and internet connection check failed for the primary network adapter.

Hydra protocol errors:

  • Config = 180 - Occurs when Hydra configuration is invalid.

  • Internal = 183 - internal Hydra protocol error.

  • ServerAuth = 184 - vpn node server reported authentication error.

  • CannotSend = 185 - internal Hydra client communication issue. Occurs when traffic accumulates into the socket buffer but doesn't go out.

  • TimeSkew = 186 - internal Hydra client communication issue. Can happens only when infrastructure problems occurs .

  • DcnSrvSwitch = 190 - tunnel was broken by the server side reason. Can happens only when infrastructure problems occurs .

  • DcnBlockedAbuse = 192 - tunnel was broken by the server side because abuse traffic detected.

  • DcnBlockedMalware = 193 - tunnel was broken by the server side because malicious traffic is detected.

  • DcnBlockedMisc = 194 - tunnel was broken by the server side with unknown reason.

  • DcnReqByCliapp = 195 - tunnel was broken by the server side.

  • DcnBlockedAuth = 196 - tunnel was broken by the server side with authentication error.

  • DcnSrvFull = 197 - Hydra tunnel was stopped on the server-side when vpn node server is full.

  • InvalidState = 4097 - Hydra cliend error when client cannot process tunnel state correctly.

  • AccessDenied = 4098 - Hydra client permissions error.

  • ComException = 4099 - Hydra client internal error.

  • ComInvalidCastException = 4100 - Hydra client internal error. Occurs when internal COM calls failed by any reason.

  • InvalidFireshieldConfiguration = 8207 - Hydra fireshield configuration is invalid.

Wireguard personal bridge errors:

  • PersonalBridgeUnknownError = 9000 - Personal bridge intermediate server returned unknown error.

  • PersonalBridgeBadRequest = 9001 - Personal bridge intermediate server returned BAD_REQUEST error.

  • PersonalBridgeForbidden = 9002 - Personal bridge intermediate server returned FORBIDDEN error.

  • PersonalBridgeInternalServerError = 9003 - Personal bridge intermediate server returned INTERNAL_SERVER_ERROR error.

  • PersonalBridgeNextHopUnavailable = 9004 - Personal bridge intermediate server is unavailable.

  • PersonalBridgeNotAnExitNode = 9005 - Personal bridge intermediate server returned NOT_AN_EXIT_NODE error.

  • PersonalBridgeTooManyHops = 9006 - Personal bridge intermediate server returned TOO_MANY_HOPS error.

  • PersonalBridgeHopNotAllowed = 9007 - Personal bridge intermediate server returned HOP_NOT_ALLOWED error.

  • PersonalBridgeSessionNotFound = 9008 - Personal bridge intermediate server returned SESSION_NOT_FOUND error.

Exceptions

  • SdkException - SDK service returned general error or transport error occured.

PreviousGenerating a Unique Device IdentifierNextPipe Messaging

Last updated 13 days ago

Was this helpful?