Reseller Create User API

Allow resellers to create new user accounts within their assigned groups

Reseller

Reseller Create User API

Create new user accounts within your reseller group. Provision VPN access for customers with customizable settings and subscription options.

Create Users

Provision new VPN accounts.

Customizable

Set devices, logins, and more.

Group Scoped

Users belong to your group.


Endpoint Overview

MUTATION/graphql

Create a new user within the reseller's assigned group. Set email, password, group assignment, and profile details.

Authentication:Bearer Token
Required scopes:reseller

Request Parameters

user.emailString!Required

Email address for the new user account (used for login).

user.passwordString!Required

Initial password for the user account.

user.groupIdInt!Required

The subscription group ID from your assigned service groups.

user.firstNameString

User's first name.

user.lastNameString

User's last name.

user.userNameString

Custom username for the account.

user.phoneString

Contact phone number.

user.countryString

User's country code.

user.langString

Preferred language code.

user.devicesInt

Maximum number of devices allowed.

user.loginInt

Maximum concurrent login count.


GraphQL Mutation

mutation resellerCreateUser($user: ResellerUserCreate!) {
  resellerCreateUser(user: $user) {
    id
    email
    username
    resellerId
    role
    enabled
    radAccess
    createdAt
  }
}

Variables:

{
  "user": {
    "email": "customer@example.com",
    "password": "SecurePass123!",
    "groupId": 100,
    "firstName": "John",
    "lastName": "Customer",
    "userName": "johncustomer",
    "country": "US",
    "phone": "+1234567890",
    "devices": 5,
    "login": 3
  }
}

HTTP Request:

curl -X POST https://api.orbnet.com/graphql \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_RESELLER_TOKEN" \
  -d '{
    "query": "mutation resellerCreateUser($user: ResellerUserCreate!) { resellerCreateUser(user: $user) { id email username enabled createdAt } }",
    "variables": {
      "user": {
        "email": "customer@example.com",
        "password": "SecurePass123!",
        "groupId": 100
      }
    }
  }'

Response

200User Created Successfully
{
  "data": {
    "resellerCreateUser": {
      "id": "user_12345",
      "email": "customer@example.com",
      "username": "johncustomer",
      "resellerId": "reseller_789",
      "role": "user",
      "enabled": true,
      "radAccess": "generated_access_key",
      "createdAt": "2024-01-15T10:30:00Z"
    }
  }
}
400Email Already Exists
{
  "errors": [
    {
      "message": "User with this email already exists",
      "path": ["resellerCreateUser"],
      "extensions": {
        "code": "EMAIL_EXISTS"
      }
    }
  ],
  "data": null
}
400Insufficient Credits
{
  "errors": [
    {
      "message": "Insufficient credits to create user",
      "path": ["resellerCreateUser"],
      "extensions": {
        "code": "INSUFFICIENT_CREDITS"
      }
    }
  ],
  "data": null
}

User Settings

Device Limit

Control how many devices can connect.

Concurrent Logins

Set simultaneous session limit.

Group Assignment

Assign to your service groups.

Access Control

Enable/disable VPN access.


Best Practices

Strong Passwords

Require secure passwords for users.

Complete Profiles

Include contact info for support.

Appropriate Group

Match group to customer needs.

Track Credits

Monitor credit usage per user.



Credit Deduction

Creating a user deducts credits from your reseller balance based on the assigned group pricing.

Manage Your Users

View and manage all users you've created.

View Users