Activate Device API

Activate and register a new device for a user's VPN account using device identifiers

Device Registration

Activate Device API

Register and activate new devices for user accounts. Link devices using UUID, serial number, and device name to enable VPN access on the specified device.

Device Linking

Securely link devices to user accounts with unique identifiers.

Controlled Access

Manage which devices can access the VPN service.

Instant Activation

Devices are ready to connect immediately after activation.


Endpoint Overview

MUTATION/graphql

Activate a device for a specific user by providing their user ID and device details including UUID, serial number, and device name.

Authentication:Bearer Token
Required scopes:admin

Request Parameters

userIdInt!Required

The unique identifier of the user for whom the device is being activated.

deviceIdInputDeviceIdInput!Required

Object containing the device identification details.

uuidString!Required

The universally unique identifier of the device.

serialString!Required

The device's serial number for hardware identification.

nameString!Required

A friendly name for the device (e.g., "John's iPhone", "Work Laptop").


GraphQL Mutation

mutation activateDevice($userId: Int!, $deviceIdInput: DeviceIdInput!) {
  activateDevice(userId: $userId, deviceIdInput: $deviceIdInput)
}

Variables:

{
  "userId": 12345,
  "deviceIdInput": {
    "uuid": "550e8400-e29b-41d4-a716-446655440000",
    "serial": "ABC123XYZ789",
    "name": "John's iPhone 15"
  }
}

HTTP Request:

curl -X POST https://api.orbnet.com/graphql \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ADMIN_TOKEN" \
  -d '{
    "query": "mutation activateDevice($userId: Int!, $deviceIdInput: DeviceIdInput!) { activateDevice(userId: $userId, deviceIdInput: $deviceIdInput) }",
    "variables": {
      "userId": 12345,
      "deviceIdInput": {
        "uuid": "550e8400-e29b-41d4-a716-446655440000",
        "serial": "ABC123XYZ789",
        "name": "Johns iPhone 15"
      }
    }
  }'

Response

200Device Activated Successfully
{
  "data": {
    "activateDevice": true
  }
}
400Device Limit Reached
{
  "errors": [
    {
      "message": "Maximum device limit reached for this user",
      "path": ["activateDevice"],
      "extensions": {
        "code": "DEVICE_LIMIT_EXCEEDED",
        "currentDevices": 5,
        "maxDevices": 5
      }
    }
  ],
  "data": null
}
400User Not Found
{
  "errors": [
    {
      "message": "User not found",
      "path": ["activateDevice"],
      "extensions": {
        "code": "USER_NOT_FOUND"
      }
    }
  ],
  "data": null
}

Device Information

UUID (Unique Identifier)

A globally unique identifier that distinguishes this device from all others.

Serial Number

Hardware serial number for additional device verification.

Device Name

User-friendly name for easy identification in device lists.

Account Linking

Securely ties the device to the specified user account.


Best Practices

Verify User First

Confirm the user exists and has an active subscription before activating devices.

Check Device Limits

Verify the user hasn't exceeded their maximum allowed devices.

Use Accurate UUIDs

Ensure UUID and serial are correctly captured from the device.

Meaningful Names

Use descriptive device names to help users identify their devices.



Device Limits

Each subscription plan has a maximum number of allowed devices. Check the user's plan limits before activating additional devices. Use the Extra Logins API to increase device limits if needed.

Manage Device Limits

Need to allow more devices for a user? Use the Extra Logins API to increase their device allowance.

Extra Logins API