Reseller Renew Subscription (New Group) API

Allow resellers to renew user subscriptions while changing to a different group/plan

Reseller

Reseller Renew with New Group API

Renew user subscriptions while upgrading or changing their plan. Move customers to a different service group during the renewal process.

Upgrade Plans

Move to better service tier.

Combined Action

Renew and change in one call.

New Settings

Apply new group parameters.


Endpoint Overview

MUTATION/graphql

Renew a user's subscription and change their group assignment simultaneously. The new group's settings will be applied and duration extended accordingly.

Authentication:Bearer Token
Required scopes:reseller

Request Parameters

usernameString!Required

The username of the user whose subscription is to be renewed.

groupIdInt!Required

The ID of the new group to assign the user to.


GraphQL Mutation

mutation resellerRenewUserSubscriptionWithNewGroup($username: String!, $groupId: Int!) {
  resellerRenewUserSubscriptionWithNewGroup(username: $username, groupId: $groupId) {
    duration
    multiLoginCount
    expiresAt
    createdAt
    updatedAt
    dailyBandwidth
    downloadUpload
  }
}

Variables:

{
  "username": "customer123",
  "groupId": 200
}

HTTP Request:

curl -X POST https://api.orbnet.com/graphql \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_RESELLER_TOKEN" \
  -d '{
    "query": "mutation resellerRenewUserSubscriptionWithNewGroup($username: String!, $groupId: Int!) { resellerRenewUserSubscriptionWithNewGroup(username: $username, groupId: $groupId) { duration expiresAt multiLoginCount } }",
    "variables": {
      "username": "customer123",
      "groupId": 200
    }
  }'

Response

200Subscription Renewed with New Group
{
  "data": {
    "resellerRenewUserSubscriptionWithNewGroup": {
      "duration": 30,
      "multiLoginCount": 5,
      "expiresAt": "2024-03-15T10:30:00Z",
      "createdAt": "2024-01-15T10:30:00Z",
      "updatedAt": "2024-02-14T08:00:00Z",
      "dailyBandwidth": "unlimited",
      "downloadUpload": "unlimited"
    }
  }
}
400Group Not Available
{
  "errors": [
    {
      "message": "Group ID 200 is not available in your service groups",
      "path": ["resellerRenewUserSubscriptionWithNewGroup"],
      "extensions": {
        "code": "GROUP_NOT_AVAILABLE"
      }
    }
  ],
  "data": null
}
400User Not Found
{
  "errors": [
    {
      "message": "User with username 'customer123' not found or not in your group",
      "path": ["resellerRenewUserSubscriptionWithNewGroup"],
      "extensions": {
        "code": "NOT_FOUND"
      }
    }
  ],
  "data": null
}

Plan Changes

Upgrade

Move to premium tier with better features.

Downgrade

Switch to more affordable plan.

Lateral Move

Change to different plan same tier.

New Features

Get plan with specific capabilities.


Use Cases

Customer Upgrade

User wants more features or devices.

Budget Change

Customer needs different pricing.

New Promotion

Move to promotional plan.

Custom Solution

Match plan to specific needs.


Best Practices

Verify Group Access

Ensure you can assign the target group.

Compare Pricing

Understand credit difference between groups.

Explain Changes

Tell customer what's changing.

Confirm Request

Double-check before processing.



Group Restrictions

You can only assign users to groups that are available in your reseller service groups. Contact admin if you need access to additional groups.

View Available Plans

Check which service groups you can assign to your customers.

Service Groups